Ankunft und Abfahrtsskript in Excel per VBA
Morning
Huhu,
ich habe eine Frage bzw. ich komme nicht weiter....ich habe eine Excelliste (Spalte A-L), ich habe es soweit, das wenn ich etwas in E schreibe, er in F die jetzige Uhrzeit schreibt, wenn ich in G ein x mache, das er mir in Spalte H die jetzige Zeit schreibt, damit ich eine Differenz habe wann ich losgefahren und wiedergekommen bin.
Da ich die Liste nicht offen liegen lassen möchte, habe ich mir überlegt das ganze per UserForm zu erstellen (Die Komplettliste ausgeblendet), soweit kein Problem, er schreibt die Spalten A-E voll, in Spalte F schreibt er auch die Uhrzeit....
Nun mein Problem bzw. mein Ende bei VBA, ich möchte noch einen Button erstellen, wo ich die Nummer aus Spalte E (Nummern in Spalte E sind einzigartig) eintrage und ein x schreiben kann, das er dann in die Spalte G setzt, allerdings starten mehrere Leute und er muss sich die Nummer aus Spalte E aus der Liste suche und dahinter ein x setzen um die Fahrt zu beenden.
Sprich die Suche nach einer Nummer in Spalte E und das zugehörige schreiben des x in Spalte G bekomme ich nicht hin. Die Userform ist aufgebaut in 2 Textboxen und 1 Button (Textbox_1 = Nummer, Textbox_2 = x für fertig)
Ich hoffe ich habe es verständlich genug erklärt und ihr könnt mir behilflich sein
ich habe eine Frage bzw. ich komme nicht weiter....ich habe eine Excelliste (Spalte A-L), ich habe es soweit, das wenn ich etwas in E schreibe, er in F die jetzige Uhrzeit schreibt, wenn ich in G ein x mache, das er mir in Spalte H die jetzige Zeit schreibt, damit ich eine Differenz habe wann ich losgefahren und wiedergekommen bin.
Da ich die Liste nicht offen liegen lassen möchte, habe ich mir überlegt das ganze per UserForm zu erstellen (Die Komplettliste ausgeblendet), soweit kein Problem, er schreibt die Spalten A-E voll, in Spalte F schreibt er auch die Uhrzeit....
Nun mein Problem bzw. mein Ende bei VBA, ich möchte noch einen Button erstellen, wo ich die Nummer aus Spalte E (Nummern in Spalte E sind einzigartig) eintrage und ein x schreiben kann, das er dann in die Spalte G setzt, allerdings starten mehrere Leute und er muss sich die Nummer aus Spalte E aus der Liste suche und dahinter ein x setzen um die Fahrt zu beenden.
Sprich die Suche nach einer Nummer in Spalte E und das zugehörige schreiben des x in Spalte G bekomme ich nicht hin. Die Userform ist aufgebaut in 2 Textboxen und 1 Button (Textbox_1 = Nummer, Textbox_2 = x für fertig)
Ich hoffe ich habe es verständlich genug erklärt und ihr könnt mir behilflich sein
Please also mark the comments that contributed to the solution of the article
Content-Key: 179122
Url: https://administrator.de/contentid/179122
Printed on: April 23, 2024 at 07:04 o'clock
12 Comments
Latest comment
Hi,
hier ein kleines Beispiel zum anpassen:
hier ein kleines Beispiel zum anpassen:
Dim rngFind As Range
Set rngFind = Columns(5).Find(2) 'Die Nummer 2 wird hier gesucht
If Not rngFind Is Nothing Then
Cells(rngFind.Row, 7) = "x" 'Ein X wird in Spalte G eingetragen
Else
MsgBox "Nr nicht vorhanden"
End If
set rngFind=nothing
Zitat von @Acrysis:
Das funktioniert nun alles schon sehr gut, allerdings weiß ich nicht was ich machen soll, damit er nachdem ich den button
zum bestätigen drücke er mir die beschriebenen Felder aus der Userform löscht
Du meinst Du willst den Inhalt der Textfelder löschen??? Wie wäre es mitDas funktioniert nun alles schon sehr gut, allerdings weiß ich nicht was ich machen soll, damit er nachdem ich den button
zum bestätigen drücke er mir die beschriebenen Felder aus der Userform löscht
Textbox=""
2. Sobald die Fahrt beendet wurde brauche ich den Zeitwert aus Spalte L beidem das x gesetzt wird.
debug.print cells(rngFind.row,12)
Zitat von @Acrysis:
Zum 2.: Es reicht wenn es als MsgBox auftaucht damit der jenige weiß wie lange er gebraucht hat.
Zum 2.: Es reicht wenn es als MsgBox auftaucht damit der jenige weiß wie lange er gebraucht hat.
oO
Aber das Du debug.print durch msgbox ersetzen musst, brauche ich Dir nicht zu schreiben, oder? ;)
msgbox Format(cells(rngfind.row,12),"hh:mm:ss")
OK, in der Standardeinstellung sucht Find anscheinend nur nach einem Teil des Zellinhalts. Um den ganzen Zellinhalt zu vergleichen kann man die XlLookAt-Konstante xlWhole benutzen. So zumindest steht es sinngemäß in der Excel-Hilfe.
Set rngFind = Columns(5).Find(What:=TextBox1, LookAt:=xlWhole)
Hallo @all!
Find verwendet ohne Parameter die letzte Sucheinstellung, wie sie von der Funktion Find oder der Suchfunktion in der Excel-Oberfläche verwendet wurde. Von daher müssen/sollen die Optionen immer entsprechend gesetzt werden.
Gruß Dieter
Find verwendet ohne Parameter die letzte Sucheinstellung, wie sie von der Funktion Find oder der Suchfunktion in der Excel-Oberfläche verwendet wurde. Von daher müssen/sollen die Optionen immer entsprechend gesetzt werden.
Gruß Dieter
Zitat von @76109:
Hallo @all!
Find verwendet ohne Parameter die letzte Sucheinstellung, wie sie von der Funktion Find oder der Suchfunktion in der
Excel-Oberfläche verwendet wurde. Von daher müssen/sollen die Optionen immer entsprechend gesetzt werden.
Gruß Dieter
Hallo @all!
Find verwendet ohne Parameter die letzte Sucheinstellung, wie sie von der Funktion Find oder der Suchfunktion in der
Excel-Oberfläche verwendet wurde. Von daher müssen/sollen die Optionen immer entsprechend gesetzt werden.
Gruß Dieter
Axo, wieder was gelernt ;)