Excel - Macro-Highlight, ja atšķirība> vai <2

  • Izdevums
  • Risinājums
  • Piezīme

Izdevums

Man ir vajadzīga palīdzība, rakstot Excel makro, ar kuru es strādāju. Šķiet, ka viss darbojas labi, izņemot vienu daļu, man ir vajadzīga palīdzība.

Man ir 2 darblapas, kas ir formatētas vienādi, tomēr dažas no 1. lapas tiek mainītas uz 2. darblapu. Es vēlos izveidot makro, lai veiktu pārbaudi kolonnās "J", "M", "P", "S", "V" un "Y" katrai šūnai. šeit ir piemērs tam, kas man būtu nepieciešams:

-Ja (darba lapa1! M24-darblapa2! M24) ir lielāka par 20 vai mazāka par -20, mainiet šūnu fona darblapu1!

-Man vajag, lai formula tiktu veikta kā pārbaude, un nevajadzētu pārrakstīt datus nevienā darblapā

Tas nozīmē, ka, ja M24 1. darblapā ir 200, 00, bet M24 darblapai - 275, 00, tad M24 darblapā 1 joprojām būs redzams kā 200.00, bet tagad tas tiks izcelts lavandā.

Jebkuras idejas, kā es varu to darīt? Es veidoju makro VBA, kam man ir ļoti maz pieredzes.

Risinājums

Jūsu kolonnu J, M, N utt. Izvēle, ka tās kolonna j + 3 ir M un M + 3 ir P utt.

jūsu faktiskie dati sākas no 2. rindas, 1. rinda ir kolonnas virsraksti

Dati vismaz nav J ailē

bet jūs esat rakstījuši, ka, ja atšķirība starp abu loksņu šūnām eiteshr> 20 vai mazāka par 20, tai jābūt krāsotai. Tas nozīmē tikai tad, ja tas ir 20, tas nav krāsots. Vai šis loģika ir OK. lūdzu, pārbaudiet vēlreiz

šajos pieņēmumos makro ir dots tālāk. pārbaudiet un publicējiet komentārus.

Ja ir kļūda vai kļūda, kļūda ir skaidri jāizskaidro. Ja makro aptur līniju, kurā tas apstājas, un kļūdas ziņojums.

otrais makro atsaukums noņem krāsu ;. Sarkanai krāsai es esmu izmantojis krāsu 3. Ja jūs pieprasāt lavandu, jums ir jāzina krāsas krāsa, jo es varu pārprast, ko tu domā lavandā. tukšā šūnā

krāsojiet šūnu lavandā. pieņemsim, ka šūna ir E13, tad dodieties uz vb redaktora tūlītēju logu un veidu:

diapazons ("e13")

un turiet kursoru šīs līnijas beigās un nospiediet taustiņu Enter un jūs saņemsiet krāsu numuru. izmantot to makro.

Abi makro ir:

 Sub tests () Dim col1 Kā Integer, col2 Kā Integer, col Kā Integer, Rrow Kā Integer Dim Lastrow Kā Integer col1 = Range ("J1") Kolonna col2 = Range ("Y1") Kolonnas lastrow = Darblapas ("sheet1 ") .Rangs (" J2 "). Beigas (xlDown) .Rindas" MsgBox lastrow darblapas "(" sheet1 "). Cells.Interior.ColorIndex = xlNone Par col = col1 Lai col2 3. (1, col) .Address 'MsgBox rrow Ja darblapas ("sheet1"). Šūnas (sliedes, kolonnas) - darblapas ("lapa2"). (Rrow, col) - Darblapas ("sheet2"). Šūnas (rinda, kolonna) <20 Tad darblapas ("lapa 1"). Šūnas (rinda, kol.) .Interior.ColorIndex = 3 beigas 

 Sub Undo () darblapas ("sheet1"). Cells.Interior.ColorIndex = xlNone Beigas apakšs 

Piezīme

Pateicoties venkat1926 par šo padomu forumā.

Iepriekšējais Raksts Nākamais Raksts

Top Padomi