Supportnet / Forum / Tabellenkalkulation
Hilfe zu einem Code, Eingabe Inputbox Datei öffnen
Frage
Hallo,
ich brauch Eure Hilfe zu einem Code.
Ich hab folgen Code.
Der Code öffnet eine Datei, indem man den Dateinamen in eine Inputbox eingibt. Die Dateinamen ist immer eine Zahlenreihe (Auftragsnummer) z.B. 1234.xls.
Sub Datei_Öffnen()
Dim Dateiname As String
Dateiname = InputBox("Bitte Namen der zu öffnenden Datei eingeben")
If Dateiname = "" Then Exit Sub
If Dir("D:\Messung\Daten\" & Dateiname & "\" & Dateiname & ".xls") <> "" Then
Workbooks.Open Filename:="D:\Messung\Daten\" & Dateiname & "\" & Dateiname & ".xls"
Else
MsgBox "Datei nicht vorhanden", vbInformation, "Fehler..."
End If
End Sub
Jetzt mmöchte ich den Code gerne Erweitern. Ich möchte gerne den Code so erweitern, das man den das die Datei nicht mehr nur mit der Zahlenreihe gerspeichert wird hier z.B. 1234.xls sondern ab jetzt den Dateinamen "Messung 1234.xls" bekommt. Das Wort Messung bleibt nur die Zahlenfolge ändert sich. Jetzt soll der benutzer aber in die Inputbox nur die Auftragsnummer eingibt, aber dann die Datei Messung 1234.xls geöffnet wird.
Ich danke Euch für Eure Hilfe!!!!!!!!!!!!!!!!!!!!!!!!!!
Gruß
Elhamplo
Antwort 1 von Saarbauer
Hallo,
füge folgende Zeile ein
If Dateiname = "" Then Exit Sub
If Dir("D:\Messung\Daten\" & Dateiname & "\" & Dateiname & ".xls") <> "" Then
Sollte zwischen dem Wort "Messung" und der Zahl noch ein Leerzeichen sein ist das An das Wort anzuhängen
Gruß
Helmut
füge folgende Zeile ein
If Dateiname = "" Then Exit Sub
Zitat:
Dateiname = "Messung"&Dateiname
Dateiname = "Messung"&Dateiname
If Dir("D:\Messung\Daten\" & Dateiname & "\" & Dateiname & ".xls") <> "" Then
Sollte zwischen dem Wort "Messung" und der Zahl noch ein Leerzeichen sein ist das An das Wort anzuhängen
Gruß
Helmut
Antwort 2 von Elhamplo
Hallo,
Sorry, das ich mich erst jetzt Melde.
Hab die Zeile eingefügt, aber es klappt nicht. Bekomme immer die Meldung Datei nicht vorhanden.
Es wird auch zuerst ein Ordner angelegt mit der Auftragsnummer als Ordnername. In diesen Ordner wird dann die Datei gespeichert. Bis jetzt auch unter der Auftragsnummer. Gebe ich nur die Auftragsnummer in die Inputbox ein, wird die Datei auch geöffnet. Mit der Neu eingfügten zeile im Code, kann die Datei nich gefunden werden. Der Ordnername soll aber nicht verändert werden. Nur der Namer der Datei soll mit dem Zusatz Messung gespeichert werden.
Ich danke Dir für Deine Hilfe!!!
Gruß
Elhamplo
Sorry, das ich mich erst jetzt Melde.
Hab die Zeile eingefügt, aber es klappt nicht. Bekomme immer die Meldung Datei nicht vorhanden.
Es wird auch zuerst ein Ordner angelegt mit der Auftragsnummer als Ordnername. In diesen Ordner wird dann die Datei gespeichert. Bis jetzt auch unter der Auftragsnummer. Gebe ich nur die Auftragsnummer in die Inputbox ein, wird die Datei auch geöffnet. Mit der Neu eingfügten zeile im Code, kann die Datei nich gefunden werden. Der Ordnername soll aber nicht verändert werden. Nur der Namer der Datei soll mit dem Zusatz Messung gespeichert werden.
Ich danke Dir für Deine Hilfe!!!
Gruß
Elhamplo
Antwort 3 von JoeKe
Hallo Elhamplo,
versuch es mal so:
Sub Datei_Öffnen()
Dim Dateiname As String
Dateiname = InputBox("Bitte Namen der zu öffnenden Datei eingeben")
If Dateiname = "" Then Exit Sub
If Dir("D:\Messung\Daten\Messung" & Dateiname & "\Messung" & Dateiname & ".xls") <> "" Then
Workbooks.Open Filename:="D:\Messung\Daten\" & Dateiname & "\" & Dateiname & ".xls"
Else
MsgBox "Datei nicht vorhanden", vbInformation, "Fehler..."
End If
End Sub
Ich hoffe ich habe dein Problem richtig interpretiert.
MfG
JöKe
versuch es mal so:
Sub Datei_Öffnen()
Dim Dateiname As String
Dateiname = InputBox("Bitte Namen der zu öffnenden Datei eingeben")
If Dateiname = "" Then Exit Sub
If Dir("D:\Messung\Daten\Messung" & Dateiname & "\Messung" & Dateiname & ".xls") <> "" Then
Workbooks.Open Filename:="D:\Messung\Daten\" & Dateiname & "\" & Dateiname & ".xls"
Else
MsgBox "Datei nicht vorhanden", vbInformation, "Fehler..."
End If
End Sub
Ich hoffe ich habe dein Problem richtig interpretiert.
MfG
JöKe
Antwort 4 von Elhamplo
Hey JöKe,
danke für Deine Hilfe!!
Habs gerade mal ausprobiert, aber klappt nicht. Bekom´m die Meldung Datei nicht Vorhanden.
Das Problem ist, das der Ordner z.B. 1234 heißt und die Datei die in dem Ordner gespeichert ist heißt Messung1234.xls. Jetzt soll durch Eingabe der Zahl z:B. 1234 in die Inputbox der Ordner 1234 gesucht werden und die Datei Messung1234.xls geöffnet werden. Jetzt weiss ich nicht mehr weiter.
Danke für Deine Mühe!!
Gruß
Elhamplo
danke für Deine Hilfe!!
Habs gerade mal ausprobiert, aber klappt nicht. Bekom´m die Meldung Datei nicht Vorhanden.
Das Problem ist, das der Ordner z.B. 1234 heißt und die Datei die in dem Ordner gespeichert ist heißt Messung1234.xls. Jetzt soll durch Eingabe der Zahl z:B. 1234 in die Inputbox der Ordner 1234 gesucht werden und die Datei Messung1234.xls geöffnet werden. Jetzt weiss ich nicht mehr weiter.
Danke für Deine Mühe!!
Gruß
Elhamplo
Antwort 5 von JoeKe
Hallo Elhamplo,
Dann nimm hier:
das erste "Messung" wieder raus.
If Dir("D:\Messung\Daten\" & Dateiname & "\Messung" & Dateiname & ".xls")
Falls zwischen Messung und 1234 ein Leerzeichen ist muss dies bei "Messung " mit angegeben werden.
MfG
JöKe
Dann nimm hier:
If Dir("D:\Messung\Daten\Messung" & Dateiname & "\Messung" & Dateiname & ".xls")
das erste "Messung" wieder raus.
If Dir("D:\Messung\Daten\" & Dateiname & "\Messung" & Dateiname & ".xls")
Falls zwischen Messung und 1234 ein Leerzeichen ist muss dies bei "Messung " mit angegeben werden.
MfG
JöKe
Antwort 6 von Elhamplo
Hallo,
danke, danke, funst Super.
Hab noch eine Frage.
Durch auslösen eines Makros wird eine Datei xy geöffnet und Daten aus einer Datei A in die gerade geöffnete Datei xy kopiert. Das klappt auch ganz gut. Das Problem ist, wenn die Datei xy schon vorher geöffnet ist bekomme ich eine Fehlermeldung. Wie kann man das umgehen, auch wenn die Datei xy geöffnet ist keine Fehlermeldung erscheint und der Makro trotzdem durchläuft????
Vielen,vielen Dank für die Mühe die Du Dir machst!!!!
Gruß
Elhamplo
danke, danke, funst Super.
Hab noch eine Frage.
Durch auslösen eines Makros wird eine Datei xy geöffnet und Daten aus einer Datei A in die gerade geöffnete Datei xy kopiert. Das klappt auch ganz gut. Das Problem ist, wenn die Datei xy schon vorher geöffnet ist bekomme ich eine Fehlermeldung. Wie kann man das umgehen, auch wenn die Datei xy geöffnet ist keine Fehlermeldung erscheint und der Makro trotzdem durchläuft????
Vielen,vielen Dank für die Mühe die Du Dir machst!!!!
Gruß
Elhamplo
Antwort 7 von JoeKe
Antwort 8 von nighty
hi jöke :)
eine variante
du könntest in einer bereitgestellten var den err fehlercode uebergeben um diesen zu ermitteln,mit diesem fehlercode dann entsprechend reagieren.
gruss nighty
eine variante
du könntest in einer bereitgestellten var den err fehlercode uebergeben um diesen zu ermitteln,mit diesem fehlercode dann entsprechend reagieren.
gruss nighty
Antwort 9 von Elhamplo
Hallo JöKe,
ich hab mir das mal angeschaut. Krieg das leider nicht hin.
Das soll so aussehen, das wenn die Datei yx die sonst mit dem Makro geöffnet wird schon offen ist, soll der Makro einfach weiter durchlaufen und die Daten übetragen.
Ich danke Dir für Deine Hilfe!!!!
Gruß
Elhamplo
ich hab mir das mal angeschaut. Krieg das leider nicht hin.
Das soll so aussehen, das wenn die Datei yx die sonst mit dem Makro geöffnet wird schon offen ist, soll der Makro einfach weiter durchlaufen und die Daten übetragen.
Ich danke Dir für Deine Hilfe!!!!
Gruß
Elhamplo
Antwort 10 von JoeKe
Hallo Elhamplo,
was bekommst du für eine Fehlermeldung?
Ich habe mir das mal nachgebaut und bekomme keine Fehlermeldung.
MfG
JöKe
was bekommst du für eine Fehlermeldung?
Ich habe mir das mal nachgebaut und bekomme keine Fehlermeldung.
MfG
JöKe
Antwort 11 von Elhamplo
Hey,
sorry hate gestern keine Zeit mehr.
Ich hab den Code ausprobiert, aber irgendwie läuft der nicht.
ICh hab das nochmal getestet, jetzt bekomme ich auch keine Fehlermeldung mehr. Keine Ahnung was ich gemacht habe. Wenn so was nochmal auftritt sage ich melde ich mich.
Ich danke Dir für die ganze Mühe!!!!
Gruß
Elhamplo
sorry hate gestern keine Zeit mehr.
Ich hab den Code ausprobiert, aber irgendwie läuft der nicht.
ICh hab das nochmal getestet, jetzt bekomme ich auch keine Fehlermeldung mehr. Keine Ahnung was ich gemacht habe. Wenn so was nochmal auftritt sage ich melde ich mich.
Ich danke Dir für die ganze Mühe!!!!
Gruß
Elhamplo