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

Teller

Status
Niet open voor verdere reacties.

Jack Nouws

Terugkerende gebruiker
Lid geworden
16 apr 2008
Berichten
1.396
Hallo allemaal

Ik ben op zoek naar een code voor mijn teller en moet als volgt werken.
Als ik mijn UserForm open moet de teller 1 hoger zijn dan de vorige sessie.
Ook moet het getal van de teller op het werkblad geplaatst worden bij bevestiging (OK).
En bij annuleren zou de teller niet mogen oplopen, dus bij de volgende opening krijg het zelfde getal als bij de annulering. Zou dat mogelijk zijn?
Ik heb voor de duidelijkheid een bestand toegevoegd. Succes.:)

Groetjes Jack
 

Bijlagen

Jack, in bijlage de gevraagde aanpassingen

Mvg

Rudi
 

Bijlagen

Dan moet je code hebben om dat bestand te openen en nadien weer te sluiten.

Zie in de helpfiles bij de Open method. Ook op het forum hier al vaak voorbij gekomen.
 
Dan moet je code hebben om dat bestand te openen en nadien weer te sluiten.

Zie in de helpfiles bij de Open method. Ook op het forum hier al vaak voorbij gekomen.

Hallo

Ik had zoiets als onderstaande ingedachten maar dat wil niet werken hoe komt dat?
Code:
Private Sub OK_Click()
Dim MyRange As Variant
Set MyRange = Workbooks("Datas").Worksheets("DataKlant")

    Dim lrij As Long
        lrij = Cells(Rows.Count, 1).End(xlUp).Row + 1
        Cells(lrij, 1).Value = TextBox1.Text
    TextBox1.Value = Cells(Rows.Count, 1).End(xlUp) + 1
End Sub

Private Sub UserForm_Activate()
Dim MyRange As Variant
Set MyRange = Workbooks("Datas").Worksheets("DataKlant")

    TextBox1.Value = Cells(Rows.Count, 1).End(xlUp) + 1
End Sub

Groeten Jack
 
Beste Jack, zoals Wim al aangaf gebruik je hiervoor de Open methode.

Code:
Private Sub OK_Click()
     Dim lrij As Long
        lrij = Cells(Rows.Count, 1).End(xlUp).Row + 1
        Cells(lrij, 1).Value = TextBox1.Text
    TextBox1.Value = Cells(Rows.Count, 1).End(xlUp) + 1
End Sub

Private Sub UserForm_Activate()
    Workbooks.Open FileName:=("Volledige padnaam naar bestand")
    Sheets("DataKlant").Activate
    TextBox1.Value = Cells(Rows.Count, 1).End(xlUp) + 1
End Sub

Mvg

Rudi
 
Beste Jack, zoals Wim al aangaf gebruik je hiervoor de Open methode.

Code:
Private Sub OK_Click()
     Dim lrij As Long
        lrij = Cells(Rows.Count, 1).End(xlUp).Row + 1
        Cells(lrij, 1).Value = TextBox1.Text
    TextBox1.Value = Cells(Rows.Count, 1).End(xlUp) + 1
End Sub

Private Sub UserForm_Activate()
    Workbooks.Open FileName:=("Volledige padnaam naar bestand")
    Sheets("DataKlant").Activate
    TextBox1.Value = Cells(Rows.Count, 1).End(xlUp) + 1
End Sub

Mvg

Rudi

Hoi Rudi

Ik zit wel met een probleem want deze code kan bij mij niet werken omdat het bestand (padnaam) bij mij al is geopend omdat ik in een submenu zit te werken.
Ik start nl. in een hoofdmenu met data, en vanuit het hoofdmenu klik ik door naar een ander bestand waar de userform zich bevind, zodoende blijft het bestand open staan.

met vr gr Jack
 
Als het bestand reeds open is kan je gebruik maken van het Windows commando om het andere bestand op de voorgrond te brengen.

Code:
Windows("Datas.xls").Activate

Mvg

Rudi
 
Als het bestand reeds open is kan je gebruik maken van het Windows commando om het andere bestand op de voorgrond te brengen.

Code:
Windows("Datas.xls").Activate

Mvg

Rudi

Nu heb ik de volgende vraag hoe plaats ik de tellercode hier tussen?

Code:
Private Sub OK_Click()
    Dim MyRange As Variant
    Set MyRange = Workbooks("Datas").Worksheets("DataPlanten")
    
    Application.ScreenUpdating = False
    
legeregel = MyRange.Range("A" & Rows.Count).End(xlUp).Row + 1
     
           Teller = OK.Teller.Value
          VNplant = OK.VNplant.Value
          TVplant = OK.TVplant.Value
          ANplant = OK.ANplant.Value
          Potmaat = OK.Potmaat.Value
             Prys = OK.Prys.Value
              Opm = OK.Opm.Value
              
  If VNplant = Empty Or ANplant = Empty Then
    MsgBox "Voer 'minimaal' een plantnaam in!"
    Exit Sub
Else
    MyRange.Range("A" & legeregel) = Teller
    MyRange.Range("B" & legeregel) = VNplant
    MyRange.Range("C" & legeregel) = TVplant
    MyRange.Range("D" & legeregel) = ANplant
    MyRange.Range("E" & legeregel) = Potmaat
    MyRange.Range("F" & legeregel) = Prys
    MyRange.Range("G" & legeregel) = Opm
    
    If TVplant <> "" Then
        MsgBox "Prys " & VNplant & " " & TVplant & " " & ANplant & " toegevoegd"
    Else
        MsgBox "Prys " & VNplant & " " & ANplant & " toegevoegd"
    End If
   PlantenInvoeren.Hide
   
End If

 response = MsgBox("Wilt u nog meer planten toevoegen?", vbYesNo, Title:="Gegevens opslaan?")
    If response = vbNo Then
        Me.Hide
        Unload Me
    Else
        
        Unload Me

        On Error Resume Next
        PlantenInvoeren.Show
        On Error GoTo 0
    End If

'tegen flikkeren van beeldscherm
Application.ScreenUpdating = True
   

End Sub


met vr groet Jack.
 
Jack, bekijk de bijlage eens en laat iets weten

Mvg

Rudi
 

Bijlagen

Jack, bekijk de bijlage eens en laat iets weten

Mvg

Rudi

Ok dit is wat ik zocht, bedankt!!:thumb:
Mijn excuus voor de late reaktie maar ik ben inminddels verhuisd naar een andere woonplaats en heb wat problemen met het verkrijgen van internet gehad maar dit is allemaal weer opgelost. Dank U voor het begrip.

Met vriendelijke groet,
Jack.
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan