Loop Through Cells - Excel-tip

Richard skriver:

Hvis jeg måske er så dristig til at spørge, ville jeg være taknemmelig, hvis du kunne oplyse mig om svaret på denne forvirrende rådgivning om syntatisk integritet videlict:

Når der henvises til en celle til ekstern brug i VisualBasic, f.eks. Via "Range (" F3 "). Vælg" antag, at jeg i stedet for kolonne 1 skal erstatte en variabel fra en loop til den følgende ende:

For Scarab=3 To 15 Range("FScarab").Select ActiveCell.Value = Scarab * Scarab - 3 Next Scarab

for eksempel.

Det er klart, at man ikke bare kan bruge FScarab, hvor man før havde haft F3, men måske er der en metode, hvorved det ønskede resultat kan opnås. Det vil sige, er der en måde at henvise til cellen i kolonne F og række Scarab for variablen Scarab, og i så fald kan du videregive disse oplysninger.

Der er flere måder at gøre dette på. Sandsynligvis den mest intuitive er denne metode, der involverer sammenkædning af kolonnebogstavet "F" med det numeriske række nummer inden for Range () referencen.

For Scarab=3 To 15 Range("F" & Scarab).Select ActiveCell.Value = Scarab * Scarab - 3 Next Scarab

Den næste metode bruger funktionen CELLS (række, kolonne) i stedet for rækkevidde. I dette tilfælde skal række og kolonne være numerisk. Din rækkevariabel er allerede numerisk, så du skal bare konvertere "F" til en 6 i dit hoved. Du vil også bemærke, at det ikke er nødvendigt at vælge cellen, du kan simpelthen tildele en værdi til den.

For Scarab=3 To 15 Cells(Scarab, 6).Value = Scarab * Scarab - 3 Next Scarab

Endelig er det muligt simpelthen at løkke gennem hver celle i området:

For Each cell in Range("F3:F15") Cell.Value = Cell.Row * Cell.Row - 3 Next Cell

Interessante artikler...