V tomto článku použijeme udalosť zmeny pracovného hárka na prenos údajov z jedného hárka do druhého v závislosti od určitých podmienok.
Pôvodné údaje pozostávajú z podrobností o zákazníkovi, ktoré zahŕňajú meno, adresu, mesto, región, krajinu a telefónne číslo.
V tomto článku chceme preniesť údaje o tých zákazníkoch, ktorí nespĺňajú podmienky pre konkrétnu ponuku. Ak zákazník nespĺňa podmienky pre konkrétnu ponuku, posledný stĺpec obsahuje hodnotu „Nie“. Chceme týchto „nespôsobilých“ zákazníkov skopírovať na list „NotEitableData“.
Vysvetlenie kódu
Ak Target.Column = 7 Potom
Vyššie uvedený kód sa používa na obmedzenie udalosti zmeny pracovného hárka, aby sa vykonala iba vtedy, ak má hodnotu 7th stĺpec sa zmení.
Hárky („NotEitableData“). Rozsah („A2: I600“). ClearContents
Vyššie uvedený kód sa používa na vymazanie hodnoty z rozsahu A2: I600
Tabuľky („Hlavné“). Bunky (i, „G“). Cieľ EntireRow.Copy: = Listy („NotEitableData“). Rozsah („A“ & Rows.Count). Koniec (xlUp). Offset (1)
Vyššie uvedený kód sa používa na kopírovanie nespôsobilých zákazníkov na list „NotEitableData“.
Pri kódovaní postupujte podľa nižšie uvedených pokynov
Private Sub Worksheet_Change (ByVal Target As Range) 'Deklarovanie premenných Dim i, Lastrow As Long' Vykonajte kód, ak sa zmení hodnota v siedmom stĺpci Ak Target.Column = 7 Potom 'Získanie čísla riadka poslednej bunky Lastrow = Listy („Main“ ) .Range ("A" & Rows.Count). End (xlUp) .Row 'Deleting any previous data from "NotEitableData" sheet Sheets ("NotEitableData"). Range ("A2: I600"). ClearContents' Looping from desatina riadok do posledného riadka Pre i = 10 Do Lastrow 'Ak je hodnota v stĺpci G riadka „Nie“, skopírujte riadok do cieľového listu, ak sú hárky („hlavné“). Bunky (i, „G“). Hodnota = „ Nie "Potom hárky (" Hlavné "). Bunky (i," G "). Cieľ EntireRow.Copy: = hárky (" NotEitableData "). Rozsah (" A "& Rows.Count) .Ukončiť (xlUp) .Offset ( 1) End If Next i End If Range ("A1"). Vyberte End Sub
Ak sa vám tento blog páčil, zdieľajte ho so svojimi priateľmi na Facebooku. Môžete nás tiež sledovať na Twitteri a Facebooku.
Budeme radi, ak sa nám ozvete, dajte nám vedieť, ako môžeme zlepšiť našu prácu a zlepšiť ju pre vás. Napíšte nám na emailovú stránku