• 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.

VBA Worksheet_BeforeDoubleClick functie

Status
Niet open voor verdere reacties.

NLmessinaNL

Gebruiker
Lid geworden
22 sep 2017
Berichten
5
Best excel toppers,
Ik zit met een issue waar ik maar niet uitkom of hoe ik het moet verwoorden. In de bijlage zie je een rooster met 3 aparte bonsheets. (Bon1, Bon2 en Bon3)
Hier onder de code:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 4 Then
With Sheets("bon1")
.Range("E20") = Target.Value
.Range("B24") = Range("E" & Target.Row).Value
.Range("E24") = Range("G" & Target.Row).Value
.Range("G24") = Range("H" & Target.Row).Value
.Range("J16") = Range("A" & Target.Row).Value
.Range("J17") = Range("M" & Target.Row).Value
.Range("E33") = Range("C" & Target.Row).Value
.Range("E34") = Range("C" & Target.Row).Value
.Range("E35") = Range("Y" & Target.Row).Value
.Range("E36") = Range("Z" & Target.Row).Value
.Range("E37") = Range("AA" & Target.Row).Value
.Range("E38") = Range("AC" & Target.Row).Value
.Select
End With
Cancel = True
End If

If Target.Column = 5 Then
With Sheets("bon2")
.Range("B15") = Target.Value
.Range("D15") = Range("G" & Target.Row).Value
.Range("E15") = Range("H" & Target.Row).Value
.Range("F15") = Range("F" & Target.Row).Value
.Range("G15") = Range("N" & Target.Row).Value
.Range("I15") = Range("K" & Target.Row).Value
.Range("K15") = Range("K" & Target.Row).Value
.Select
End With
Cancel = True
End If

If Target.Column = 6 Then
With Sheets("bon3")
.Range("F15") = Target.Value
.Range("D15") = Range("G" & Target.Row).Value
.Range("E15") = Range("H" & Target.Row).Value
.Range("F15") = Range("F" & Target.Row).Value
.Range("I15") = Range("K" & Target.Row).Value
.Range("G15") = Range("K" & Target.Row).Value
.Range("J15") = Range("D" & Target.Row).Value
.Range("B15") = Range("E" & Target.Row).Value
.Select
End With
Cancel = True
End If

End Sub

Nu is het zo dat wanneer ik de dubbel klik functie aanspreek in (kolom 4,5 en of 6) hij eenmalig de verschillende cellen kopieert en plakt in sheetbon1, sheetbon2 en of scheetbon3. Dit werkt goed alleen als ik meerdere dagen inzet op de bon wil dan overschrijft hij de eerste regel. Is het mogelijk dat ik bijvoorbeeld van Ma t/m zon kan selecteren en de dubbel klik functie aanspreek en dat hij die info allemaal in de bon plakt ? of dat ik per dag de functie kan aanspreken en dat hij +1 row doet. Ik hoop dat hier iemand mij kan helpen en of mij in de juiste richting kan sturen, misschien zit ik wel geheel verkeerd te denken :D
Bekijk bijlage VBA Issue (version 6).xlsm
Wie o Wie kan mij helpen :)
 
je kan iets maken met zoiets:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
for each cel in target
jouw code
next
end sub
 
je kan iets maken met zoiets:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
for each cel in target
jouw code
next
end sub

@sylvester-ponte bedankt voor je input, ik krijg het nog niet voor elkaar wat ik wil helaas.
Hij blijft bij het Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) de cellen in de bon overschrijven in plaats van de eerst volgende empty row te pakken.
Het blijkt toch iets lastiger dan ik dacht, even goed bedankt !
 
Svp niet Quoten/citeren.

Verwijder eerst alle samengevoegde cellen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan