Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1052to1056
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Werte aktualisieren oder in nächster freie Zeile

Werte aktualisieren oder in nächster freie Zeile
02.03.2009 19:24:29
Frank
Hallo!
Ich möchter gerne per VBA einen vorhandenen Datensatz aktualisieren oder in der nächsten freien Zeile anlegen.
Leider bin ich VBA Deep, dass ist mein Versuch:

Private Sub CommandButton6_Click()
Dim LngZ As Long
Dim Found1 As Range
Dim Found2 As Range
Set Found1 = Sheets("Aktuell").Columns(2).Find(ComboBox7, Sheets("Aktuell").Cells(10, 2), ,  _
xlPart, , xlNext)
Set Found2 = Sheets("Archiv").Columns(2).Find(ComboBox7, Sheets("Archiv").Cells(65536, 2), ,  _
xlPart, , xlNext)
LngZ = Cells(Rows.Count, "B").End(xlUp).Row
If Found2 Is Nothing Then
ComboBox7.Text = LngZ.Offset(0, 1).Value  'Name
End If
End Sub


Leider komme ich nicht weiter. Aktuell wird der fett gedruckte Bezeichner als ungültig ausgegeben.
ComboBox7.Text = LngZ.Offset(0, 1).Value 'Name
Kann mir Jemand helfen?
Gruß Frank

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Werte aktualisieren oder in nächster freie Zeile
02.03.2009 19:36:05
Daniel
Hi
LngZ ist ne Zahlenvariable (long), die die Zeilennummer enthält.
du versuchstdiese Zahl wie eine Excelzelle zu verwenden, das geht natürlich nicht.
wenn, dann so:

ComboBox7.Text = Cells(LngZ, "B").Offset(0, 1).Value


Gruß, Daniel

Ah! Klar - Danke Dir
02.03.2009 19:42:58
tursiops
Alles klar... Wieder was gelernt!
2. Versuch
02.03.2009 22:30:38
Frank
Hallo!
Ich habe inzwischen einige Versionen durchprobiert, allerdings ohne Erfolg.

Private Sub CommandButton6_Click()
Dim Found1 As Range
Dim Found2 As Range
Dim lzeile As Long
With Worksheets("Archiv")
'Die letzte beschrieben Zeile in Spalte B ermitteln
lzeile = .Range("B3").End(xlDown).Row + 1
End With
Set Found1 = Sheets("Aktuell").Columns(78).Find(ComboBox7, Sheets("Aktuell").Cells(94, 78), ,  _
_
xlPart, , xlNext)
Set Found2 = Sheets("Archiv").Columns(2).Find(ComboBox7, Sheets("Archiv").Cells(65536, 2), ,  _
_
xlPart, , xlNext)
If Found2 Is Nothing Then
.Cells(lzeile.Row, 1) = ComboBox7.Text 'Nachname
End If
End Sub


So schwer kann das doch nicht sein. Wie bringe ich meine Userform dazu den Wert aus ComboBox4 in die erste freie Zeile im Sheet "Archiv" B:B zu schreiben?
Gruß Frank

Anzeige
AW: 2. Versuch
02.03.2009 23:04:57
hary
Hallo Frank
ohne das alles nachzubauen.
Hiermit ist scheint was falsch.

.Cells(lzeile.Row, 1)
muesste eigentlich heissen
.Cells(lzeile,2)
ich suche die letzte leere immer so
zelle = Cells(Rows.Count, 2).End(xlUp).Row + 1 'die 2 steht fuer Spalte B


Gruss Hary

AW: 2. Versuch
02.03.2009 23:06:54
Daniel
Hi
1. Versuchst du auch nach END WITH den Auslassungspunkt bei der Objektreferenzierung zu verwenden, das geht natürlich nicht.
2. Wenn du die Werte der Combobox4 in der Zelle haben willst, solltest du auch die Combobox4 nehmen und nicht die Combobox7
Gruß, Daniel
Anzeige
Danke - nun klappts
03.03.2009 09:41:24
Frank
Hallo!
Vielen Dank für Eure Hilfe, nun klappt es *freu*
Gruß Frank

318 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige