/ / Double Embedded pre slučky v programe Excel VBA - excel, vba

Dvojité vnorené pre slučky v programe Excel VBA - excel, vba

Snažím sa nastaviť kód, ktorý prvý 1.) iteruje cez zoznam a nahrádza hodnoty v určitých bunkách a potom 2.) kopírovať a vložiť hodnoty v zozname

Napríklad:

 Column A     Column B
NY          500
CA          1000
GA          200

Mám pre slučku opakovať stĺpec A (donahradiť hodnoty v bunkách D4, D5, D6 s NY potom CA a GA), ale potrebujem sekundu pre slučku, ktorá bude kopírovať a vkladať tieto hodnoty do stĺpca B naraz (napr. kopírovať a vložiť hodnotu v B1 do B1 po prvom výmena NY, potom B2 do B2 po nahradení CA, potom B3 atď.),

Sub Macro2()

Dim x As Integer
NumRows = Range("A1", Range("A1").End(xlDown)).Rows.Count
Range("A1").Select
For x = 1 To NumRows
Range("D4") = ActiveCell
Range("D5") = ActiveCell
Range("D6") = ActiveCell
ActiveCell.Offset(1, 0).Select
Next

End Sub

odpovede:

1 pre odpoveď č. 1

Myslím, že o to žiadate ... v tom prípade to všetko môže byť vykonané v jednej slučke - nie je potrebná vnorená slučka.

Sub MM()

For i = 1 To Cells(1, 1).End(xlDown).Row
"// Assign the value of Cells(i, 1) [1 = column number] to the range D4:D6.
[D4:D6] = Cells(i, 1).Value
"// This is the same as copy -> paste values. Change the "2" for different column
Cells(i, 2).Value = Cells(i, 2).Value
Next

End Sub