Jei norite nukopijuoti tam tikrą suformatuotą langelį arba spalvotus langelius iš vieno stulpelio į kitą, šis straipsnis skirtas jums. Šiame straipsnyje mes išmoksime kopijuoti spalvotus langelius naudojant VBA kodą.
Toliau pateikiamas mūsų turimų duomenų momentinis vaizdas, ty A stulpelyje yra duomenų su keliomis geltonos spalvos ląstelėmis.
Išgauti tik geltona spalva paryškintus duomenis; turime sukurti UDF, kad spalvos langeliai būtų rodomi tik B stulpelyje
- Norėdami sukurti vartotojo apibrėžtą funkciją, atliksime šiuos veiksmus:
- Spustelėkite skirtuką Kūrėjas
- Kodo grupėje pasirinkite „Visual Basic“
- Mes privalome nukopijuoti žemiau esantį kodą į standartinį modulį
Funkcija yra geltona (ByRef r As Range)
Jei r.Interior.ColorIndex = 6 Tada
Geltona = r. Vertė
Kitas
Geltona = vbNullString
Pabaiga Jei
Pabaigos funkcija
- B1 langelyje bus formulė = Geltona (A1)
Aukščiau pateiktas kodas tiksliai atitinka spalvą Nr. 6, kuri skirta tik geltonai spalvai. Taigi udf išskiria tik tas reikšmes, kuriose yra spalva#6.
Jei norime išgauti raudonos spalvos ląsteles, turime patikrinti paskirtą spalvos numerį ir tiesiog pakeisti geltonos spalvos numeriu.
Tokiu būdu mes galime nuskaityti geltonos šrifto spalvos langelius naudodami vba kodą.
Atsisiųskite - išskirkite konkretų spalvų indeksą naudodami VBA - xlsm