Clever-Excel-Forum

Normale Version: Werte per Knopfdruck in Tabelle schreiben
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich stehe vor einem Problem, bei dem ich nicht so richtig weiterkomme. Ich bin was VBA anbelangt, kein besonders erfahrener Kopf. Aus dem Internet und Recherche habe ich mir eine Code geschrieben, der meiner Meinung nach auch funktionieren müsst... tut er aber nicht  Confused

Ich kann zwar den ersten Schützen problemlos einfügen, allerdings bekomme ich ab dem zweiten einen Fehler. Wie bekomm ich das gelöst?

Das ist der Code:

Sub RechteckabgerundeteEcken6_Klicken()

Dim Vorname As String, Nachname As String, Datum As String, BSV_ID As String, Hersteller As String, Modell As String, Seriennummer As String, Kaliber As String
Worksheets("Eingabeformular").Select
Vorname = Range("H16")
Nachname = Range("H18")
Datum = Range("H20")
BSV_ID = Range("H22")
Hersteller = Range("L16")
Modell = Range("L18")
Seriennummer = Range("L20")
Kaliber = Range("L22")

Worksheets("Datenbank").Select
Worksheets("Datenbank").Range("B12").Select
If Worksheets("Datenbank").Range("B12").Offset(1, 0) <> "" Then
Worksheets("Datenbank").Range("B12").End(x1Down).Select
End If

ActiveCell.Offset(1, 0).Select
ActiveCell.Value = Vorname
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Nachname
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Datum
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = BSV_ID
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Hersteller
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Modell
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Seriennummer
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Kaliber

End Sub

Danke schonmal!  Heart
Hallo,

statt
Code:
If Worksheets("Datenbank").Range("B12").Offset(1, 0) <> "" Then
Worksheets("Datenbank").Range("B12").End(x1Down).Select
End If
vielleicht
Code:
Worksheets("Datenbank").Cells(Rows.Count, 2).End(xlUp).Select

Gruß Uwe
Hi,

ohne das ganze Select-Gedöns:
Code:
Sub RechteckabgerundeteEcken6_Klicken()
Dim Vorname As String, Nachname As String, Datum As String, BSV_ID As String, Hersteller As String, Modell As String, Seriennummer As String, Kaliber As String
Dim aktZeile As Long
With Worksheets("Eingabeformular")
    Vorname = .Range("H16")
    Nachname = .Range("H18")
    Datum = .Range("H20")
    BSV_ID = .Range("H22")
    Hersteller = .Range("L16")
    Modell = .Range("L18")
    Seriennummer = .Range("L20")
    Kaliber = .Range("L22")
End With
With Worksheets("Datenbank")
    aktZeile = .Cells(.Rows.Count, 2).End(xlUp).Row + 1
    .Cells(aktZeile, 2) = Vorname
    .Cells(aktZeile, 3) = Nachname
    .Cells(aktZeile, 4) = Datum
    .Cells(aktZeile, 5) = BSV_ID
    .Cells(aktZeile, 6) = Hersteller
    .Cells(aktZeile, 7) = Modell
    .Cells(aktZeile, 8) = Seriennummer
    .Cells(aktZeile, 9) = Kaliber
End With
End Sub
Und ob es jetzt sinnvoll ist, ein Datum als String zu behandeln sei mal dahin gestellt.
Gleiches gilt für die BSV-ID, wobei hier ein String vermutlich die bessere Variante ist.