Nächste Zeile in einer Fixierten Spalte Auslesen

Ka-may

Mitglied
Hallo zusammen, ich bekomme eine Sache nicht ganz zuende hin. Ein Ansatz habe ich schon, aber es klappt noch nicht so ganz.
Also:

Ich habe Spalte A im excel fixiert. Darin sind unzählige Auftragsnummern. Die möchte ich einzeln
in der Datenmaske durch ein Button auslesen können. Undzwar so, dass bei jedem Klick, die nächste Auftr.-Nr erscheint.

Ich hab es so versucht:

Private Sub CommandButton1_Click()
Dim RowCount As Long
With Worksheets("Daten")
RowCount = .Cells(.Rows.Count, 1).End(xlUp).Row + 1

Me.TextBox6.Value = .Cells(RowCount, 1).Value


End With

End Sub

MFG Ka-may
 
Ist der Button bzw. ist die Textbox in einer UserForm oder wo****

Wenn immer die nächste Auftragsnummer angezeigt werden soll, dann musst du auch irgendwo die zuletzt angezeigte Nummer/Zeile speichern.

Im Moment liest du nur den Wert der letzten Zeile + 1 (also einer leeren Zelle) aus.

Ich habe jetzt mal eine Form mit einem Button und einem Textfeld gebastelt. Hier der Code dazu:

Visual Basic:
Dim zeile

Private Sub CommandButton1_Click()
'prüfen ob schon eine Zeilennummer vorhanden ist
If zeile = 0 Then zeile = 1

With Worksheets(1)
    Me.TextBox1.Value = .Cells(zeile, 1).Value
    
    If zeile = .Cells(.Rows.Count, 1).End(xlUp).Row + 1 Then
        Exit Sub
    Else: zeile = zeile + 1
    End If

End With

End Sub

Die Variable zeile bekommt die letzte Zeilennummer (oder 1). Durch klicken auf den Button wird dann hochgezählt.
Ist jetzt nur auf die Schnelle aber es geht.
 
Zuletzt bearbeitet:
Hey, vielen Dank für die schnelle Antwort.
Also es funktioniert schon mal, dass er den nächsten wert ausgibt, aber nur einmal.
Wenn ich nochmal drauf klick, dann passiert nichts.

Muss ich da noch was hinzufügen****
 
Müsste bei dir eigentlich funktionieren. Zumindest dann, wenn du die Variable "zeile" im allgemeinen Teil deklariert hast. Ansonsten geht ihr Wert immer wieder verloren und es wird beim nächsten Klick wieder mit 1 angefangen.

Habe jetzt allerdings nochmal was geändert und deshalb gibt es jetzt 2 Buttons in der Form.
Der erste führt im Grunde die gleiche Funktion aus wie im Beispiel oben (Code gerigfügig geändert). Der zweite verwendet zum Zählen keine Variable sondern nimmt immer die aktive/markierte Zeile als nächsten Wert.

Gruß Thomas
 

Anhänge

  • Nummer.zip
    9,4 KB · Aufrufe: 24
Super!! Es funktioniert, Vielen Dank!Habe jetzt den 2ten Button übernommen.

Könntest du mir noch sagen, wie ich in den Befehl schreibe, dass er sich auf die 2te tabelle dabei bezieht****Ich habe nämlich 2 Tabellen im excel. In der ersten (Hauptmenü) ist ein Button. Wenn ich darauf klicke, dann erscheint die Maske. In der zweiten tabelle werden die daten erfasst.

MFG Ka-may
 
Womit soll "er" sich auf die zweite Tabelle beziehen.

Sollen beim Klicken auf den Button Daten aus Tabelle2 ausgelesen und in Tabelle1 eingetragen werden oder wie?
Ansonsten stell doch mal deine Datei hier rein (ich habe Excel 2000) wenn es von den Daten her geht dann ist es vielleicht deutlicher.

Gruß Thomas
 
Ja ich glaub auch das ist dann leichter.

Also wie du sehen kannst, sind in "Hauptmenü" 2 buttons.
Mit dem ersten kann ich maske öffnen. Mit dem 2ten in die daten einsehen.

Wenn ich also die maske öffne, dann klappt das noch nicht mit dem klick auf den button (CommandButton1), weil der bezug zu tabelle2 ( Daten) fehlt.


Die Tabelle Auswertung ist unerheblich.

gruß
 

Anhänge

  • Mappe1 zip.zip
    24,2 KB · Aufrufe: 22
Womit arbeitest du, mit Excel 2003 **** Wenn ja, speichere die Datei bitte mal im Format für Excel 2000. Hab ja oben geschrieben das ich das hier habe und so kann ich die Datei von dir nicht öffnen.
 
Jetzt geht es wirklich.

Habe im Code ein bisschen was geändert. Du findest die Änderungen indem du nach "NEUE ZEILE" suchst. Das "A" steht hier jeweils für Anfang und das "E" steht für Ende, ist aber immer nur eine Zeile.
 

Anhänge

  • Mappe1 - ko.zip
    16,8 KB · Aufrufe: 22

Neue Beiträge

Zurück