Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Variable für Laufwerk vergeben

Forumthread: Variable für Laufwerk vergeben

Variable für Laufwerk vergeben
17.07.2019 10:59:18
Linda
Hallo Zusammen,
kann mir bitte jemand helfen, beim Benennen eines variablen Laufwerkes?
Das Problem ist, wir verschlüsseln bei uns manche Daten über TrueCrypt. Nun habe ich meine Excel-Mappen in einen Ordner verschoben, der über TrueCrypt verschlüsselt ist. Wenn ich diesen verschlüsselten Ordner nun öffnen möchte wird jedesmal ein temporäres Laufwerk vergeben. Da dies nicht immer "L" ist, wie in meinem Code, müsste ich nun das Laufwerk als Variable angeben. D.h. Das Laufwerk der Mappe auf die ich zugreifen möchte ist immer das selbe wie das der Hauptmappe.
Bin leider nicht fit was VBA angeht....

Sub Datenübertragung()
ActiveSheet.Range("Q40:X40").Copy
'Prüft, ob eine Mappe bereits geöffnet ist
'falls nicht : Prüft, ob Mappe als Datei im angegebenen Ordner existiert
'und öffnet diese Mappe falls vorhanden
Range("Q40:X40").Copy
Dim strOrdner As String, strdateiname As String
Dim wbMappe As Workbook
strOrdner = "L:\Rechnung Nr. und Vorlage\"
strdateiname = "Rechnungsnummern_laufend.xlsm"
On Error Resume Next 'Fehlerbehandlung
Set wbMappe = Workbooks(strdateiname)
If Not wbMappe Is Nothing Then
wbMappe.Activate
MsgBox "Mappe ist bereits geöffnet !"
Else
'Wenn Mappe noch nicht geöffnet ist
If Dir(strOrdner & strdateiname)  "" Then
'Mappe aus o.g. Ordner öffnen :
Set wbMappe = Workbooks.Open(strOrdner & strdateiname, UpdateLinks:=False)
Else
MsgBox "Folgende Datei existiert nicht : " & vbf & vbLf & _
strOrdner & strdateiname, vbOKOnly + vbCritical, "Datei nicht gefunden !"
End If
End If
'Speicher für Objektvariable wieder freigeben :
Set wbMappe = Nothing
Range("C1:J1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Range("H12").Select
End Sub

Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Workbook.Path
17.07.2019 11:04:04
Fennek
Hallo,
prüfe bitte, was dieser VBA-Befehl liefert:

msgbox thisworkbook.path
Wird das Laufwerk richtig angeben?
mfg
AW: Workbook.Path
17.07.2019 11:09:07
Linda
"L:\Rechnung Nr und Vorlage\Alle Rechnungen\laufende Projekte"
AW: Workbook.Path II
17.07.2019 11:22:05
Fennek

Laufwerk = left(thisworkbook.Path, 2)

Anzeige
AW: Workbook.Path II
17.07.2019 11:29:14
Linda
Sorry Fennek, hab´s noch nicht kapiert.
Sub zur_Übersicht_Rechnungsausgang()
'Prüft, ob eine Mappe bereits geöffnet ist
'falls nicht : Prüft, ob Mappe als Datei im angegebenen Ordner existiert
'und öffnet diese Mappe falls vorhanden
Dim strOrdner As String, strdateiname As String
Dim wbMappe As Workbook
Laufwerk = Left(ThisWorkbook.Path, 2)
strOrdner = "Laufwerk\Rechnung Nr. und Vorlage\" 'Mit "\" am Ende !
strdateiname = "Rechnungsnummern_laufend.xlsm"
On Error Resume Next 'Fehlerbehandlung
Set wbMappe = Workbooks(strdateiname)
If Not wbMappe Is Nothing Then
wbMappe.Activate
MsgBox "Mappe ist bereits geöffnet !"
Else
'Wenn Mappe noch nicht geöffnet ist
If Dir(strOrdner & strdateiname)  "" Then
'Mappe aus o.g. Ordner öffnen :
Set wbMappe = Workbooks.Open(strOrdner & strdateiname, UpdateLinks:=False)
Worksheets("RE-Ausgang").Activate
Else
MsgBox "Folgende Datei existiert nicht : " & vbf & vbLf & _
strOrdner & strdateiname, vbOKOnly + vbCritical, "Datei nicht gefunden !"
End If
End If
'Speicher für Objektvariable wieder freigeben :
Set wbMappe = Nothing
End Sub

Anzeige
AW: ungetestet
17.07.2019 11:39:06
Fennek
ungetestet:

strOrdnner = Left(ThisWorkbook.Path, 2) & "\Rechnung Nr. und Vorlage\"
strdateiname = "Rechnungsnummern_laufend.xlsm"
On Error Resume Next 'Fehlerbehandlung
Set wbMappe = Workbooks(strdateiname)
If Not wbMappe Is Nothing Then
wbMappe.Activate
MsgBox "Mappe ist bereits geöffnet !"
Else
Set wbMappe = Workbooks.Open(strOrdner & strdateiname, UpdateLinks:=False)
end if

Anzeige
AW: ungetestet
17.07.2019 11:48:30
Linda
Super es funktioniert :-)
Ich danke dir vielmals!
AW: Workbook.Path II
17.07.2019 13:03:55
Rudi
Hallo,
      Laufwerk = Left(ThisWorkbook.Path, 2)
strOrdner = Laufwerk &"\Rechnung Nr. und Vorlage\" 'Mit "\" am Ende !

Gruß
Rudi
;

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