Office: ThisWorkbook.Path was mach ich falsch

Helfe beim Thema ThisWorkbook.Path was mach ich falsch in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; hallo allerseits, probier grad ein bisschen was mit excel aus und bin am verzweifeln habe mir einen button mit makro gebastelt. die file, die den... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von salzbauer, 12. Juni 2007.

  1. ThisWorkbook.Path was mach ich falsch


    hallo allerseits, probier grad ein bisschen was mit excel aus und bin am verzweifeln

    habe mir einen button mit makro gebastelt.
    die file, die den button enthält liegt im Ordner "C:\test3\"
    bei knopfdruck liest das makro alle Felder "B3" aller dateien die noch in diesem ordner liegen aus und summiert die werte wieder in der file.
    sieht so aus:

    Private Sub CommandButton2_Click()
    Dim Dateien As Integer
    Dim Zeichen As Integer
    Dim DateiName As String
    With Application.FileSearch
    .NewSearch
    .LookIn = "C:\test3\"
    .SearchSubFolders = False
    .Filename = "*.*"
    If .Execute() > 0 Then
    For Dateien = 1 To .FoundFiles.Count
    For Zeichen = Len(.FoundFiles(Dateien)) - 4 To 1 Step -1
    If Mid(.FoundFiles(Dateien), Zeichen, 1) = "\" Then
    DateiName = Mid(.FoundFiles(Dateien), Zeichen + 1, Len(.FoundFiles(Dateien)) - 4)
    Exit For
    End If
    Next Zeichen

    Rem b3 wird ausgelesen und in a1 addiert

    Cells(1, 1) = Cells(1, 1) + ExecuteExcel4Macro("'C:\test3\" & "[" & DateiName & "]" & Sheets(1).Name & "'!" & Range("B3").Address(, , xlR1C1))
    Next Dateien
    End If
    End With
    End Sub

    ich habe nur eine ungefähre ahnung wie das genau hinhaut, weil ich das in einem forum gefunden habe.

    jedenfalls funktioniert das schonmal prima
    addiert alle felder B3 aller dateien im Ordner c:\test3\

    so nun wollte ich "c:\test3\" durch "ThisWorkbook.Path" ersetzen,
    damit ich die file einfach in jeden beliebigen ordner hineinkopiere, und per knopfdruck die felder B3 aller files dieses Ordners summieren lassen kann....
    leider haut es nicht hin, und ich habe schon vieles probiert, mit dem resultat, dass manchmal ein auswahlmenü kommt, wo ich jede datei einzeln auswählen muss; oder ein error fenster kommt; oder er anfängt ALLE dateien auf dem PC auszulesen um Feld B3 zu addieren....
    scheinbar mache ich beim ersetzen von c:\test3\ durch ThisWorkbook.Path irgendeinen kleinen fehler wahrscheinlich vergesse ich nur ein " oder sowas...
    jedenfalls wäre es nett wenn mir jemand erklärt wie dieses ThisWorkbook.Path funktioniert.

    :)
     
    salzbauer, 12. Juni 2007
    #1
  2. Wie hast Du das denn genau eingegeben??

    ...
    With Application.FileSearch
    .NewSearch
    .LookIn = ThisWorkbook.Path
    .SearchSubFolders = False
    ...

    sollte normalerweise funktionieren... *rolleyes.gif*
     
  3. also so gehts nicht:
    .LookIn = ThisWorkbook.Path & "\"

    so gings auch nicht:
    .LookIn = "ThisWorkbook.Path" & "\"

    so auch nicht:
    .LookIn = ThisWorkbook.Path

    wenn ich eines von diesen hernehme, dann fängt der pc in "Eigene Dateien" mit der ersten vorliegenden Ecxel datei an, was natürlich gleich zu nem error führt, da die file in "Eigene Dateien" nix mit der sache zu tun hat

    er chekt einfach nicht das er nur die files in c:\test3\ durchsehen soll..
    was ja auch funktioniert, wenn ich ihm explizit den pfad angebe...

    aber wenn ich die datei in den ordner lege, und mit thisworkbook.path arbeiten will...gehts einfach nicht...
    ich bin verzweifelt....
    vor allem weiter untem in code
    bei
    .....
    Cells(1, 1) = Cells(1, 1) + ExecuteExcel4Macro("'C:\test3\" & "[" & DateiName & "]" & Sheets(1).Name & "'!" & Range("B3").Address(, , xlR1C1))
    .....

    muss das c:\test3\ nochmal ersetzt werden..
    aber da schaff ichs ja ned mal ohne syntaxfehler.... *smashing

    oben bei .lookin gibts wenigstens keinen syntaxerror...



    ich weiß einfach nicht wie man das richtig eingibt....
    so dass es gleichwertig zu dem "c:\test3\" wird
     
    salzbauer, 14. Juni 2007
    #3
  4. ThisWorkbook.Path was mach ich falsch

    Wo hast Du die Arbeitsmappe in der das Makro ist denn abgespeichert??
    Ich hoffe doch in c:\test3\ ???
     
  5. ja natürlich is die in c:\test3\

    bin ja nich ganz blöd *grins

    also ich wär auch dankbar, wenn mir jemand eine alternativlösung anbieten würde, die aus allen files in dem ordner in dem das ausgeführte makro liegt
    jeweils eine zeile auslesen kann.

    oder vielleicht ein auswahlmenu einfügen, das man halt den ordner auswählen muss, und er dann alle dateien dieses ordners durchsucht...
     
    salzbauer, 14. Juni 2007
    #5
  6. Also bei mir funktioniert das hier einwandfrei:

    Code:
    Wenn du in deinem Code das "C:\Test3\" durch die Variable Pfad ersetzt sollte es eigentlich laufen.
     
    Styrkar, 14. Juni 2007
    #6
  7. also, wie bereits gesagt
    im oberen teil funktioniert das mit mit ThisWorkbook.Path
    also bei .lookin
    nur im unteren teil von dem code, bei

    Code:
    funktioniert das nicht. *bawling
    und dieser codeteil ist sehr wichtig.
    und zwar aus folgendem grund:

    erst habe ich einen button gemacht, der per knopfdruck alle dateien in dem ordner öffnet und die felder summiert. das problem ist nur, dass dieses Makro dann auch die File nochmal öffnen will, aus der das Makro ausgeführt wird.
    Excel fragt einen dann "wollen sie blabla nochmal öfnen, alles geht verloren usw usw" mit der Folge, dass er abbricht, wenn man die file neu öffnet, bzw. kein ergebniss anzeigt wenn er die file nicht öffnen darf

    deswegen ist der 2te button mit dieser funktion
    Code:
    die habe ich in irgendwo im schönen weiten internet gefunden. und dieser code schafft es irgendwie die files auszulesen OHNE sie zu öffnen.
    Somit bekommt man dieses Problem nicht mehr, mit dem öffnen des gerade arbeitenden Dokument.
    dafür schaffe ich es nicht diesen Code so umzuwandeln, dass er mit ThisWorkbook.Path funktioniert. mit c:\test3\ haut er hin...also muss er ja wohl auch irgendwie mit ThisWorkbook.Path hinhauen..nur wie..... *confused.gif*

    frustriert mich schön langsam, vor allem weil das eigentlich erst der Anfang ist, von dem was ich machen muß. und wenn das schon nicht hinhaut, wie wird dann erst der rest....

    weil eigentlich wirds danach noch komplizierter....
    dann brauch ich neben der summe eines bestimmten feldes aus einem ordner,
    auch noch eine file die 2 felder aus jeder dieser files ausliest, und in diese file einfügt..... aber darum kümmer ich mich erst wenn das einfache funktioniert..*laugh haha

    vielen dank an euch alle für eure mühe, die ihr bis jetzt aufgebracht habt !

    hier nochmal der code, so wie ich in jetzt grad versucht hab
    Code:
    spuckt mir nen laufzeitfehler 13: typen unverträglich in besagter zeile aus....
     
    salzbauer, 14. Juni 2007
    #7
  8. ThisWorkbook.Path was mach ich falsch

    Da ist noch ein "\" zu viel drin. Änder den Befehl mal so ab:
    Code:
     
    Styrkar, 14. Juni 2007
    #8
  9. oha stimmt.... sind ja jetzt 2 "\" hintereinander...
    aber habs so geändert wie du es vorgeschlagen hast....
    hat auch nichts geholfen...*bawling

    aber ich hab schon wieder was neues ausprobiert.
    hab jetzt ne ordnerauswahlfunktion eingebaut mit
    Code:
    sodass man den Pfad nun mit "strOrdner" einfügen sollen könnte...
    haut aber auch nicht hin.

    das problem ist einfach echt das korrekte einfügen des Pfades in dieses
    Code:
    ich weiß einfach nicht was ich noch alles ändern muß. dass das funktioniert...ist mir einfach unverständlich... vor allem weil es so funktioniert:
    Code:
    wir müssten es jetzt nur schaffen das "C:\test3\"
    durch einen anderen pfad zu ersetzen.
    ob das jetzt
    " ThisWorkbook.Path & "\" " oder
    " Pfad " oder
    " strOrdner "

    ist, ist eingentlich egal,
    da es sich ja im endeffekt immer um den gleichen pfad handelt.
    nur dass man ihn halt jedes mal auf eine andere art und weise erhält.

    aber solange das nicht in dieser ExecuteExcel4Macro funzt, hilft das alles nichts.
     
    salzbauer, 14. Juni 2007
    #9
  10. Ich hab das mit der Variable getestet und bei mir geht es. Was genau kommt denn bei dir für ein Fehler wenn du den Pfad ersetzt?
     
    Styrkar, 14. Juni 2007
    #10
  11. welche variable hast du denn eingefügt ?
    kopier mal bitte den code rein.

    also bei mir kommt, wenn ich diesen code verwende:
    Code:
    ein laufzeitfehler 1004
    "Eine Formel in diesem Bereich enthält ein oder mehrere ungültige Bezüge."

    und dann will er besagte Code:
    Zeile debugen



    und bei
    Code:
    also wenn ich natürlich Pfad wie weiter oben als "Pfad = ThisWorkbook.Path & "\"" habe, so wie vorher, dann kommt auch wieder ein 1004 Laufzeitfehler, allerdings diesmal mit
    "Die angegebene Formel enthält einen Fehler"
    und will wie immer die besagte Zeile debuggen
     
    salzbauer, 15. Juni 2007
    #11
  12. Ich hab das Makro mal korrigiert:

    Code:
    Es wird übrigens B3 ausgelesen, nicht C1 wie es im Kommentar steht.
     
    Styrkar, 15. Juni 2007
    #12
  13. ThisWorkbook.Path was mach ich falsch

    jo das stimmt , dass B3 ausgelesen wird und nicjt C1,
    kommt daher, dass ich das selber immer wild rumkopiere...
    hab mittlerweile schon 6 xls-files mit 4 verschiedenene buttons drin *mrcool

    also ich probier den code gleich mal aus....
    danke schonmal für die mühe
     
    salzbauer, 15. Juni 2007
    #13
  14. WOW
    haha.... es funktioniert !!!!!!!!!!
    *lachen *dance
    *lachen *dance
    *lachen *dance

    wie hast du das gemacht, wo war denn der fehler ?
    war er jetz doch ned bei der pfadangabe ?
    und wenn nicht, warum hats dan mit dem alten c:\test3\ pfad funktioniert ?

    DANKE DANKE DANKE
    *10points
     
    salzbauer, 15. Juni 2007
    #14
  15. Warum es damit funktioniert hat frage ich mich auch *wink.gif*
    Der Dateiname war an sich schon falsch, außerdem hast du die Auswahl nicht auf Excelfiles beschränkt (was sich aber nur auswirkt wenn noch andere Files in dem Ordner liegen).
    In dem letzten Makro gabs auch noch Fehler in dieser Zeile:
    Code:
    Da steht ein & "]" hinter der Pfadangabe und die Variable strOrdner steht in "".
     
    Styrkar, 15. Juni 2007
    #15
Thema:

ThisWorkbook.Path was mach ich falsch

Die Seite wird geladen...
  1. ThisWorkbook.Path was mach ich falsch - Similar Threads - ThisWorkbook Path mach

  2. Vergleich von drei Spalte - wenn nur ein Wert größer X, dann mache Y

    in Microsoft Excel Hilfe
    Vergleich von drei Spalte - wenn nur ein Wert größer X, dann mache Y: Hallo zusammen, folgende Problemstellung: Ich möchte in D eine Ausgabe wenn in den Zeilen der Spalten A bis C ein Wert über 1.000 liegt. Also: Wenn (A1>1000 oder B1>1000 oder C1> größer 1.000)...
  3. Dir(Path, vbDirectory) liefert Dateinamen

    in Microsoft Access Hilfe
    Dir(Path, vbDirectory) liefert Dateinamen: Hallo, ich schon wieder! Ich versuche mir die Verzeichnisstruktur eines Laufwerks auszulesen und möchte nur die Verzeichnisse ausgegeben bekommen. Aber schon beim ersten Aufruf von Dir(Path,...
  4. Mach aus einer Tabelle mehrere.

    in Microsoft Excel Hilfe
    Mach aus einer Tabelle mehrere.: Ich habe eine Tabelle die so aussieht: ABC-Würfel 5237000 Abfallbehälter 5236000 Abfallbeseitigung 5231300 Abfallcontainer 5231300 Abfallsammler 5236000 Abfalltrenner 5236000...
  5. Automatische Antowrt an "Reply-To" anstelle "Return-Path"

    in Microsoft Outlook Hilfe
    Automatische Antowrt an "Reply-To" anstelle "Return-Path": Grüße, ich habe die Google Suche als auch die Foren Suche erfolglos versucht, daher ein neuer Eintrag. Folgendes Problem: ich möchte emails automatisch mit einer Vorlage beantworten, jedoch...
  6. Abbildungen verrutschen - Bug oder mache ich etwas falsch?

    in Microsoft Word Hilfe
    Abbildungen verrutschen - Bug oder mache ich etwas falsch?: Hallo zusammen, beim Schreiben meiner Masterarbeit habe ich Problem. Die Abbildungen verschieben sich willkürlich, sind aber trotzdem irgendwie doch noch an der richtigen Stelle verankert. Zum...
  7. Zellen trennen: Aus eins mach zwei

    in Microsoft Excel Hilfe
    Zellen trennen: Aus eins mach zwei: Hallo liebe Excel-Experten! Ich braeuchte dringend Hilfe! Und zwar habe ich folgendes Problem: Ich habe aus einer Datenbank (wie man das halt oft macht) ein paar (ca. 32.000) Daten...
  8. dropdown und sverweis wie mach ich das

    in Microsoft Excel Hilfe
    dropdown und sverweis wie mach ich das: hallo ihr lieben wie funktioniert ein Gültigkeits-DropDown und ein sverweis.habe vorher schon eine frage gestellt und konnte der hilfe leider nicht folgen. ich bin echt eine excel null....
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden