Tervehdys pitkästä aikaa! Toivottavasti nyt on kooditagit oikein :). Eli seuraavanlainen kysymys. Oheinen VBA Vlookup koodi toimii, mutta se lopettaa toimimisen kun haettavaa tietoa ei löydy. Do While pyörittää koodia niin kauan kunnes A sarake on tyhjä. Nyt kuitenkin jos sillä hetkellä haussa olevaa tietoa ei ole niin se lopettaa Vlookupin kokonaan. Tarkoitus olisi, että jos haettavaa tietoa ei ole niin sen laittaa vaikka 0 kyseisen nimen kohdalle ja jatkaa Vlookupin loppuun. Ohessa koodi!
Sub Vlookup()
Dim i As Integer
i = 1
Do While Range("A" & i).Value <> ""
the_value = Worksheets("Asiakkaat").Range("A" & i + 1)
Range("B" & i + 1)=Application.WorksheetFunction.Vlookup(the_value,Worksheets("Tammi").Range("A:F"), 6, False)
i = i + 1
Loop
End SubMod. korjasi kooditagit pois tavallisesta tekstistä ja VBA-koodiin oikean kielen kooditagit. Mitä kummaa?!
Heglund kirjoitti:
Toivottavasti nyt on kooditagit oikein :).
Ei ole. Viestiä ei ole tarkoitus merkitä koodiksi ja VBA ei ole lähelläkään PHP:tä.
En kyllä ihan ymmärrä miksi haluat tehdä tuon VBA:lla, eikö se olisi helpompaa pistää vaan tuo vlookup funktio B-sarakkeeseen ja kopioida seuraaville riveille.
Mutta jos nyt väkisin haluaa tehdä VBA:lla niin vaikka
Sub Vlookup()
Dim i As Integer
i = 1
On Error Resume Next
Do While Range("A" & i).Value <> ""
the_value = Worksheets("Asiakkaat").Range("A" & i + 1)
Range("B" & i + 1).Formula = 0
Range("B" & i + 1) = Application.WorksheetFunction.Vlookup(the_value, Worksheets("Tammi").Range("A:F"), 6, False)
i = i + 1
Loop
End SubAihe on jo aika vanha, joten et voi enää vastata siihen.