Opstarthulp bij VBA (2010 of 2013)

Status
Niet open voor verdere reacties.

leikew

Gebruiker
Lid geworden
4 jun 2015
Berichten
22
Beste specialisten.
Binnenkort ben ik noodgedwongen van baan te veranderen (wel intern) en zal me meer bezig moeten gaan houden met Excel en VBA programmeren.
Als eerste opdracht moet ik van een bestaande Excel file een VBA maken zodat ze de data kunnen in voeren.
Het invoeren lukt me wel, maar ik stuit telkens op het volgende probleem dat hij de data overschrijft en niet naar de volgende regel gaat, maar naar het einde van het veld.
Ik heb diverse codes geprobeerd, maar het lukt me niet..

Wie kan mij helpen om mij een zetje de goede richting op te helpen.

Ik heb het bestand waar het om gaat bij gevoegd.

Mijn dank is groot..

Groet
Leo
 

Bijlagen

Je voorbeeld document bevat geen VBA, dus ook geen invoerformulier waarin getoond kan worden hoe je dat zou kunnen doen.
 
Je voorbeeld document bevat geen VBA, dus ook geen invoerformulier waarin getoond kan worden hoe je dat zou kunnen doen.


Dan heb ik het verkeerde document verzonden, bij deze de goeie.

Groet
leo
 
Doe het eens zo. Is dat wat je bedoeld?
Code:
Private Sub cmdAdd_Click()
    Dim iRow As Long
    Dim ws As Worksheet
    Set ws = Worksheets("Piba Input")
    
    'check for a part number
    If Trim(Me.txtSD1.Value) = "" Then
      Me.txtSD1.SetFocus
      MsgBox "Alle gegevens invoeren"
      Exit Sub
    End If
    
    'find first empty row in database
     iRow = ws.Cells(ws.Rows.Count, "B").End(xlUp).Row + 1
        
    'copy the data to the database
    'use protect and unprotect lines,
    '     with your password
    '     if worksheet is protected
    With ws
    '  .Unprotect Password:="password"
      .Cells(iRow, 4).Value = Me.txtSD1.Value
      .Cells(iRow, 5).Value = Me.txtSD2.Value
      .Cells(iRow, 6).Value = Me.DTPicker1.Value
      .Cells(iRow, 7).Value = Me.txtSF.Value
    '  .Protect Password:="password"
    End With
    
    'clear the data
    Me.txtSD1.Value = ""
    Me.txtSD2.Value = ""
    Me.txtSF.Value = ""
    Me.txtSD1.SetFocus
End Sub
 
Laatst bewerkt:
Hoi.

Ook dan blijft hij de gegevens onderaan de tabel weer geven en niet in de tabel zelf.
Ik denk dat de formule in de excel tabel gezien wordt als data?

Groet
Leo
 
opnieuw

Ik heb een nieuw bestand gemaakt waar wel alles werkt, maar de bedoeling is dat ik dit ook in het nieuwe bestand kan doen.
Het liefst met de datums die vaststaan in de 2 kolom van het eerste bestand..

Groet
 

Bijlagen

Als kolom C altijd wordt gevuld kan je die gebruiken:
iRow = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row + 1
 
Als kolom C altijd wordt gevuld kan je die gebruiken:
iRow = ws.Cells(ws.Rows.Count, "C").End(xlUp).Row + 1

Bedankt deze werkt wel als ik de code wijzig. Ik ga aan de slag met de rest.
Alvast bedankt voor de moeite.

Groet
Leo
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan