Ga naar inhoud

Zoeken in een kolom naar een naam met behulp van VBA code


suikerklont

Aanbevolen berichten

Op een werkblad staat inmiddels in kolom I een reeks namen. Met onder andere de naam "jan"

Er is een variabele actief met de inhoud "jan"

Hoe zoek ik met behulp van de VBA code effectief naar " jan" in de kolom?

Vervolgens moet ik naast de naam "jan" de inhoud van de variabele "loon" plaatsen.

 

Graag hulp, bij voorbaat dank

Link naar reactie
Delen op andere sites

Foutje in de code, hier hersteld.

en code activeren door ergens in je werkblad in een lege cel te dubbelklikken. te

 

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim Found As Range, tempcell As Range, X As Variant
X = InputBox("Welke naam zoek je?." & vbCrLf & "Er wordt gezocht in de kolom 'naam'")
If X <> "" Then
Set Found = Columns(9).Find(X, , xlValues, xlPart)
If Found Is Nothing Then
    MsgBox X & "  Naam niet gevonden!"
    Exit Sub
Else
    Application.GoTo Found.Offset(, -8), True

End If
If MsgBox("Verder zoeken?", vbYesNo) = vbYes Then
    Do
        Set tempcell = Columns(9).FindNext(After:=Found)
        If Found.Row >= tempcell.Row And Found.Column >= tempcell.Column Then
            MsgBox "Niet(s) meer gevonden!"
            Range("L4").Select
            Exit Do
          End If
        Set Found = tempcell
        Application.GoTo Found.Offset(, -8), True
        If MsgBox("Verder zoeken?", vbYesNo) = vbNo Then Exit Do
    Loop
End If
Else: Exit Sub
End If
End Sub

Link naar reactie
Delen op andere sites

Andere oplossing met 1 naam en 1 bedrag voor het loon behorend bij die naam, ervan uitgaand dat het bereik I2:J400 is. Voor meer namen en bijbehorende bedragen, is de macro eenvoudig aan te passen.

Sub macro1()
Dim x As Integer, loon As Double
loon = 2000
With Sheets("Blad1")
.Range("J2:J400").ClearContents
For x = 1 To 400
If LCase(.Range("I" & x).Value) = "jan" Then
.Range("J" & x).Value = loon
End If
Next x
End With
End Sub
aangepast door alpha
Link naar reactie
Delen op andere sites

×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.