Live-Forum - Die aktuellen Beiträge
Datum
Titel
16.10.2025 17:40:39
16.10.2025 17:25:38
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zwei Spalten nach Zahl durchsuchen

Zwei Spalten nach Zahl durchsuchen
23.07.2018 21:06:26
Tobias
Hallo, ich habe vor ein Paar Wochen schon mal das Thema aufgemacht und von KlaWet hilfe bekommen. Musste aber dann ins Krankenhaus und konnte nicht mehr antwoten.
Damals war die Frage : "ich habe eine Tabelle in der A oder B eine Nummer steht.
Nun möchte ich per Makro in die erste Zeile in der in A und B nichts steht was reinschreiben. " Das funktioniert prima.
Muss/will das nun erweitern. Es soll erst in den beiden Spalten A und B geschaut werden ob "Nummer" vorhanden ist. Wenn ja sollen die Daten ( Anrede, Vorname, Nachname ... ) aktuallisiert werden.
Dim Nummer As String
Dim Anrede As String
Dim Vorname As String
Dim Nachname As String
Dim Strasse As String
Dim PLZ As String
Dim Ort As String
Dim lngLast(0 To 2) As Long
Set worksKunden = Workbooks("Kunden.xls").Worksheets("Daten")
Nummer = Range("Nummer")
Anrede = Range("Anrede")
Vorname = Range("Vorname")
Nachname = Range("Nachname")
With worksKunden
'erste freie Zeile für jede Spalte ermitteln
lngLast(1) = .Cells(Rows.Count, "A").End(xlUp).Row + 1
lngLast(2) = .Cells(Rows.Count, "B").End(xlUp).Row + 1
'maximale Zeile ermitteln
lngLast(0) = Application.WorksheetFunction.Max(lngLast(1), lngLast(2))
' Eintragen
.Range("A" & lngLast(0)) = "Nummer"
'.Range("B" & lngLast(0)) = LEER
.Range("C" & lngLast(0)) = "Anrede"
.Range("D" & lngLast(0)) = "Name"
.Range("E" & lngLast(0)) = "Vorname"
' Speichern
ActiveWorkbook.Save
End With
Kann mir jemand weiterhelfen?
Liebe Grüße TObi
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zwei Spalten nach Zahl durchsuchen
24.07.2018 02:10:07
Tobias
Ich habe mal eine Demo Datei hochgeladen.
https://www.herber.de/bbs/user/122838.zip
Die Eingabe erfolgt über die Datei Eingabe
In Nummer wird die Kundennummer eingegeben.
Es soll in Kunden.xlsx in A und B gesucht werden ob die Nummer vorhanden ist.
Wenn ja soll die Zeile aktuallisiert werden.
Wenn nicht soll in der ersten leeren Zeile die Werte in A, C, D, und E eingetragen werden
Vielen Dank
TObi
Anzeige
AW: Zwei Spalten nach Zahl durchsuchen
24.07.2018 11:23:54
fcs
Hallo Tobi,
so funktioniert es.
Ich hab zsätzlich Prüfungen eingebaut
a: Ist DAtei Kunden.xls geöffnet
b: sind mindestens Nummer und Nachname eingegeben
Gruß
Franz
Sub Speichern()
Dim wkbEingabe As Workbook, wkbKunden As Workbook
Dim wksEingabe As Worksheet, worksKunden As Worksheet
Dim rngFinden As Range
Dim Zeile_K As Long
Dim Nummer As Variant
Dim Anrede As String
Dim Vorname As String
Dim Nachname As String
Dim Strasse As String
Dim PLZ As String
Dim Ort As String
Set wkbEingabe = ActiveWorkbook
Set wksEingabe = ActiveSheet
'Prüfen ob "Kunden.xlsx" geöffnet ist
For Each wkbKunden In Application.Workbooks
If LCase(wkbKunden.Name) = "kunden.xlsx" Then
Exit For
End If
Next
If wkbKunden Is Nothing Then
MsgBox "Die Datei ""Kunden.xlsx"" ist zur Zeit nicht geöffnet.", vbOKOnly, _
"Eingabe Speichern"
GoTo Beenden
End If
Application.ScreenUpdating = False
Set worksKunden = wkbKunden.Worksheets(1) 'oder .Worksheets("Daten")
If wksEingabe.Cells(2, 1).Text = "" Or wksEingabe.Cells(2, 4).Text = "" Then
MsgBox "Nummer und Nachname müssen eingegeben werden!", vbOKOnly, _
"Prüfung Eingaben"
GoTo Beenden
End If
With wksEingabe
Nummer = .Range("Nummer")
Anrede = .Range("Anrede")
Vorname = .Range("Vorname")
Nachname = .Range("Nachname")
'usw.
End With
With worksKunden
Set rngFinden = .Range(.Columns(1), .Columns(2)).Find(what:=Nummer, LookIn:=xlValues, _
lookat:=xlWhole)
If rngFinden Is Nothing Then
'nächste freie Zeile in Spalte E (Nachname)
Zeile_K = .Cells(.Rows.Count, 5).End(xlUp).Row + 1
.Cells(Zeile_K, 1) = Nummer       'Spalte A
Else
Zeile_K = rngFinden.Row
End If
.Cells(Zeile_K, 3).Value = Anrede   'Spalte C
.Cells(Zeile_K, 4).Value = Vorname  'Spalte D
.Cells(Zeile_K, 5).Value = Nachname 'Spalte E
'usw.
End With
wkbKunden.Save
Beenden:
Application.ScreenUpdating = True
Set wkbKunden = Nothing: Set wksEingabe = Nothing: Set worksKunden = Nothing
Set rngFinden = Nothing
End Sub

Anzeige
AW: Zwei Spalten nach Zahl durchsuchen
24.07.2018 15:03:25
Tobias
Hallo Franz, vielen vielen Dank.
Es funktioniert wunderbar!
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige