Ich komme leider nicht mehr weiter und brauche eure Unterstützung. Ich habe zwei Textfelder eines davon ist die AUTO-ID mit einer fortlaufenden Nummer (aktuell 4-stellig) und in dem zweiten Textfeld wir das aktuelle Jahr mit folgenden Code ausgegeben:
Private Sub AktuellesJahr_GotFocus()
Me.AktuellesJahr = DatePart("yyyy", Date)
End Sub
Nun möchte ich mit VBA erreichen, das wenn ich auf einen Text-Link klicke ein fest hinterlegter lokaler Link plus aktuelles Jahr plus Auto-ID öffnet.
Vielleicht so in etwa: ??
Private Sub cmdLink_Click()
Me.Link = ("\\Bestellungen\Vorgänge\)[AktuellesJahr][AutoId]
End Sub
Aktuelles Jaht und Auto-ID sind auf jedem Fall keine festen Werte.
Hab ihr da eine Lösung für mich?
Gruß und Danke
Olaf
Hallo,
so:
Me.Link = "\\Bestellungen\Vorgänge\" & [AktuellesJahr] & [AutoId]
Das Klammerpaar muss weg und die Variablen sind zum Text mit & zu addieren.
Hallo Klaus,
vielen Dank für die schnelle Antwort. Das habe ich jetzt verstanden. :D
Jetzt stehe ich vor der nächsten Herausforderung. :-\
In meinem Formular habe ich zwei Klicks drin, einmal soll er mir mit "aktuellesJahr" einen Ordner erstellen, wenn dieser noch nicht vorhanden ist. Das mach ich mir den folgenden Code:
Private Sub Jahr_anlegen_Click()
'prüfen ob ein Ordner vorhanden ist und falls nicht
'fragen ob Ordner erstellt werden soll
Dim Ord As String
Dim Antwort As Integer
Ord = "C:\xyz\" & [AktuellesJahr]
If Dir(Ord, vbDirectory) <> "" Then
MsgBox "Ordner ist schon vorhanden"
Else
Antwort = MsgBox("Der Ordner " & Ord & " ist nicht vorhanden." _
& vbNewLine _
& "soll der Ordner angelegt werden?!", vbYesNo)
If Antwort = vbYes Then
'Falls kein LW angegeben ist, erstellt die MkDir-Anweisung
'den neuen Ordner auf dem aktuellen LW.
'LW wurde aber durch "C:\xyz\" festgelegt
MkDir Ord
MsgBox "Ordner " & Ord & " angelegt"
Else
MsgBox "Es wurden keine Änderungen vorgenommen"
Exit Sub
End If
End If
End Sub
funktioniert auch wunderbar :D
Bei dem nächsten Klick soll er in dem Unterordner "aktuellesJahr" einen neuen Ordner anlegen mit der aktuell angezeigten "Auto-ID" und genau da komm ich nicht weiter. Er macht immer was, aber nicht das was ich mir als Ergebnis vorstelle. Irgendwie ist das mit der Übernahme des "aktuellesnJahres" so nicht ganz richtig.
Private Sub cmdVorgang_Click()
'prüfen ob ein Ordner vorhanden ist und falls nicht
'fragen ob Ordner erstellt werden soll
Dim Ord As String
Dim Antwort As Integer
Ord = "C:\xyz\&[AktuellesJahr]" & [ID]
If Dir(Ord, vbDirectory) <> "" Then
MsgBox "Ordner ist schon vorhanden"
Else
Antwort = MsgBox("Der Ordner " & Ord & " ist nicht vorhanden." _
& vbNewLine _
& "soll der Ordner angelegt werden?!", vbYesNo)
If Antwort = vbYes Then
'Falls kein LW angegeben ist, erstellt die MkDir-Anweisung
'den neuen Ordner auf dem aktuellen LW.
'LW wurde aber durch "C:\xyz\" festgelegt
MkDir Ord
MsgBox "Ordner " & Ord & " angelegt"
Else
MsgBox "Es wurden keine Änderungen vorgenommen"
Exit Sub
End If
End If
End Sub
Ich möchte das er in den Ordner c:\xyz\"aktuellesJahr"\ einen Ordner mit der aktuellen Auto-ID erstellt (z.B. c:\xyz\2016\123). Ich schaffe es immer nur, das er "aktuellesJahr" und "auto-ID" mit einander verbindet, aber nicht einen neuen Unterordner erstellt.
Könnt ihr mir da bitte weiterhelfen?
Danke :'(
Gruß
Olaf
Hallo Olaf,
vergleiche den Code der beiden Prozeduren, notfalls Zeichen für Zeichen, dann solltest du den Unterschied sowie die Fehlerursache vermutlich selbst herausfinden können.
Hallo MaggieMay,
der Unterschied liegt in
ZitatOrd = "C:\xyz\&[AktuellesJahr]" & [ID]
Ich bin Anfänger und weiss jetzt nicht wie ich es machen muss, damit er in den vorher erstellten Verzeichnis [aktuellesJahr], quasi eine Variable, einen neuen Unterordner anlegt.
Gruß
Olaf
Hallo,
naja, der Ausdruck ist wohl falsch...
Ord = "C:\xyz\" & Me![AktuellesJahr] & "\" & Me![ID]
So war das gemeint:
Vergleiche
Ord = "C:\xyz\" & [AktuellesJahr]
mit
Ord = "C:\xyz\&[AktuellesJahr]" & [ID]
Was fällt dir dabei auf?
Danke DF6GL,
das ist genau die Information die ich benötigt habe und nun funktioniert es auch danke eure Hilfe perfekt. :D