• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

In dialoogbox een waarde uit een ander tabblad weergeven.

  • Onderwerp starter Onderwerp starter Heink
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

Heink

Gebruiker
Lid geworden
6 mrt 2014
Berichten
6
Goedemiddag,

Zou iemand de onderstaande code kunnen bekijken en mee willen denken over een mogelijke oplossing kunnen vinden. Ik heb een button gemaakt die 2 dingen doet: 1 hij kopieert de waarde die ingevuld is naar een ander tabblad, 2 hij vraagt om het personeelsnummer, dit wordt gevonden door middel van verticaal zoeken in kolom A van tabblad referentie en hij verwijderd deze regel uit het tabblad referentie. Dit werkt helemaal naar behoren alleen onderstaande is een schoonheidsissue:

Nu is mijn dialoog zo ingesteld dat deze bestaat uit de volgende vragen.

1. Medewerker uit dienst melden.
2. Vul het personeelsnummer in van diegene die uit dienst wordt gemeld.
3. Wil je "& nme & " uit dienst melden? Ofwel hij geeft hier het eerder ingevoerde pers. nr weer.
4. MsgBox rcrd & " of " & nme & " is uit dienst gemeld!" hier geeft hij opnieuw het personeelsnummer weer

Nu heb ik een vraag, kan ik ipv het weergeven van het eerder ingevoerde personeelsnummer
Code:
" & nme & "
(ook verticaal zoeken in kolom B&C van het tabblad referentie zodat hij hier de naam die bij het personeelsnummer hoort weergeeft?

Ik denk zelf graag mee echter alle hulp is welkom,


Code:
Private Sub CommandButton2_Click()

If MsgBox("Medewerker uit dienst melden?", vbYesNo) = vbNo Then Exit Sub

Range("B14:O14").Copy
 
With Sheets("Uitdienst").Range("A65536").End(xlUp).Offset(1, 0)

.PasteSpecial Paste:=xlPasteValues, Operation:= _
       xlNone, SkipBlanks:=True, Transpose:=False

Sheets("Zoek Medewerker").Range("B14:O14").Select
    Application.CutCopyMode = False
    
Dim nme As String
Dim cll As Range, rng As Range
Dim rcrd As Integer
Set rng = Sheets("Referentie").Range("A2:A120") '// "Project List" is the sheet name
rcrd = 0


nme = InputBox("Vul het personeelsnummer in van diegene die uit dienst wordt gemeld.", "Record delete facility!")
    If nme = "" Then Exit Sub
    
    If MsgBox("Wil je " & nme & " uit dienst melden?" & Chr(10) & "Klopt dit?", 52, "DELETING RECORDS!!") = vbNo Then MsgBox "Er is niemand uit dienst gemeld.": Exit Sub

For Each cll In rng
    If cll.Value = nme Then
        Sheets("Referentie").Rows(cll.Row).EntireRow.Delete
        rcrd = rcrd + 1
    End If
Next

    If rcrd > 0 Then
        MsgBox rcrd & " of " & nme & " is uit dienst gemeld!"
    Else
        MsgBox "Personeelsnummer niet gevonden." & Chr(10) & "Er is niemand uit dienst gemeld."
    End If
    
End With

End Sub
 
Beste,

Een voorbeeldbestand is altijd handig!

mvg,
tkint
 
Dank voor de snelle reactie, ik zal morgen het voorbeeldbestand posten, thuis op mijn mac krijg ik het bestand helemaal niet aan de praat.
 
Beste,

Ik heb jouw code wat aangepast :
Code:
nme = InputBox("Vul het personeelsnummer in van diegene die uit dienst wordt gemeld.", "Record delete facility!")
    If nme = "" Then Exit Sub
    
    'If MsgBox("Wil je " & nme & " uit dienst melden?" & Chr(10) & "Is this correct?", 52, "DELETING RECORDS!!") = vbNo Then MsgBox "Er is niemand uit dienst gemeld.": Exit Sub
teller = 1
For Each cll In rng
    teller = teller + 1
    If cll.Value = nme Then
    naam = Sheets("Referentie").Cells(teller, 3).Value
    If MsgBox("Wil je " & nme & " als " & naam & " uit dienst melden?" & Chr(10) & "Is this correct?", 52, "DELETING RECORDS!!") = vbNo Then MsgBox "Er is niemand uit dienst gemeld.": Exit Sub
        Sheets("Referentie").Rows(cll.Row).EntireRow.Delete
        rcrd = rcrd + 1
    End If
Next

De instructie die begint ' is uitgeschakeld en verplaatst in de for Each-next lus. Er werd een teller geprogrammeerd zodat we kunnen achterhalen op welke rij de variable nme gevonden wordt. Misschien niet professioneel maar het functioneert.

mvg,
tkint
 
Laatst bewerkt:
Dat is uiteindelijk waar het om gaat. Hartelijk dank!
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan