Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: MichaFuhrmann am Januar 25, 2016, 09:59:08 Vormittag

Titel: Daeipfad in Makro ändern, durch Eingabe in der Arbeitsmappe
Beitrag von: MichaFuhrmann am Januar 25, 2016, 09:59:08 Vormittag
Hallo zusammen, ich habe im  Makro (u.a) folgendes:

Dim datei
Dim datei_liste(1000) As String
Dim j As Integer
j = -1
Dim dateityp As Variant

Const verz = "HIER DATEIPFAD\"
datei = Dir(verz & "\*.*")

Do While datei <> ""
     j = j + 1
'     Range("A" & i) = datei
'     dateityp = Split(datei, ".")
'     Range("B" & i) = dateityp(1)
     If datei <> "" Then
        datei_liste(j) = datei
    End If
    datei = Dir()
Loop

Es geht um das rot markierte :)

Das gesamte Makro, mit dem Rest den man nicht sieht, bewirkt dass viele ver. Zellen ausgefüllt werden, auf Basis anderer Excel Dateien in dem eingegeben Pfad.
 Ich möchte aber nun, dass wenn man den Dateipfad ändern will man nicht das Makro öffnen muss.
In der Arbeitsmappe möchte ich nun z.B. in  die Zelle A11 einen Dateipfad eingeben der dann anschliessend in das Makro geladen wird.
Ist dies möglich, bzw. kann mir jemand verraten wie?

Vielen Dank für die Hilfe! :)
Titel: Antw: Daeipfad in Makro ändern, durch Eingabe in der Arbeitsmappe
Beitrag von: Herbert Grom am Januar 25, 2016, 10:32:57 Vormittag
Hallo Micha,

probiers mal damit:


Const verz = sheets("xyz").range("A11").value
Titel: Antw: Daeipfad in Makro ändern, durch Eingabe in der Arbeitsmappe
Beitrag von: MichaFuhrmann am Januar 25, 2016, 10:45:33 Vormittag
Danke für den Tipp Herbert.
Habe nun folgendes versucht und es wird mir beim Ausführen des Makros kein Fehler angezeigt, es tut sich jeodch nichts

Const verz = "Sheets(Datenuebersicht).Range(A11).Value"
datei = Dir(verz & "\*.*")
 


Bei folgendem sagt er mir: Fehler beim Kompilieren. Konstanter Ausdruck erforderlich

Const verz = Sheets("Datenuebersicht").Range("A11").Value
datei = Dir(verz & "\*.*")


Bei dem: Fehler beim Kompilieren, Syntaxfehler

Const verz = "Sheets("Datenuebersicht").Range("A11").Value\"
datei = Dir(verz & "\*.*")

Was mache ich falsch^^?
Titel: Antw: Daeipfad in Makro ändern, durch Eingabe in der Arbeitsmappe
Beitrag von: Herbert Grom am Januar 25, 2016, 12:12:50 Nachmittag
Hallo Micha,

Probiers mal damit:

Sub test()
   sDir = ActiveWorkbook.Path
   verz = Sheets("Datenuebersicht").Range("A11").Value
   datei = sDir & "\" & verz & "*.*"
End Sub

wenn es damit nicht funzt, dann ist noch etwas anderes faul. Lade doch mal eine Beispieldatei hoch.