DialogÖffnen - schließen, wenn er sich öffnet
#11
Hallo Julia,

kleiner Hinweis am Rande. Es heißt ElseIf und nicht Else If!
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • o0Julia0o
Top
#12
(26.03.2017, 22:55)atilla schrieb: Was will sie Jetzt mit Andres Vorschlag? Wenn sie es zum Laufen bringt, will sie dann die Formeln nicht reinschreiben, wenn die Datei nicht vorhanden ist?
Sie weiß doch, dass die Datei noch nicht vorhanden ist.
Ich weiß es nicht, ob die Datei vorhanden ist. Sie kann vorhanden sein, oder nicht. Und den Rest weißte ja dann schon. So verhindere ich, dass dieser Excel-Dateibrowser sich öffnet(ich könnte ihm ja ohnehin nicht die Datei zeigen, da sie nicht existiert).

@schauan
jo, danke. Das war das Problem. Jetzt funktioniert es :)
Top
#13
Question 
So funktioniert es. Allerdings, wenn die Variable Dateiname leer ist(Tabelle: "Tabelle1" Feld: "J111"), dann kommt trotzdem die MsgBox "Die Datei ist vorhanden". Wenn allerdings irgendetwas in dem Feld steht, dann kommt die MsgBox nicht.
Code:
Sub prcHoleDaten() 'funktioniert, die Funktion GetDataClosedWB muß vorhanden sein im Modul
   Dim Pfad            As String
   Dim Dateiname       As String
   Dim Blatt           As String
   Dim Bereich         As String
   Dim Ziel            As Range
   Pfad = ThisWorkbook.Path & "\" 'Pfad wo sich die Datei befindet aus der kopiert werden soll. Also gleiches Verzeichnis wo sich die Hauptdatei befindet.
   Dateiname = Worksheets("Calc3").Range("J111").text 'aus welcher Datei soll er holen?
   Blatt = "Tabelle1"  'von welcher Tabelle soll er holen?
   Bereich = "A6:AE40"   'aus welchem Bereich soll er holen?
   Set Ziel = Worksheets("Tabelle1").Range("A6")  'in welchen Bereich soll er kopieren? Genauer gesagt: Bei welcher Zelle soll er anfangen, Datein reinzukopieren? Bsp: ActiveCell geht auch
    If Dir(Pfad & Dateiname) <> "" Then 'Wenn die Datei vorhanden ist, dann..
       MsgBox "Die Datei ist vorhanden"
       If GetDataClosedWB(Pfad, Dateiname, Blatt, Bereich, Ziel) Then '..hole die Daten..
       Exit Sub
       End If
     Else '..sonst Ende(damit der nicht bei Nichtvorhanden Dateien, nach den Dateien fragt per Browser)
   End If
End Sub

Fragt der nicht mit "If Dir(Pfad & Dateiname) <> """" ab, ob die Datei(Dateiname) in dem Pfad(Pfad) vorhanden ist? Wenn die Datei aber "" heißt, ist sie doch nicht vorhanden, weil es eine Datei ohne Namen doch gar nicht geben kann.
Top
#14
Hallo Julia,

auch wieder aus der OH (diesmal zur Dir-Funktion)

Zitat:Gibt eine Zeichenfolge (String) zurück, die den Namen einer Datei, eines Verzeichnisses oder eines Ordners darstellt, der mit einem bestimmten Suchmuster, einem Dateiattribut oder mit der angegebenen Datenträger- bzw. Laufwerksbezeichnung übereinstimmt.

Da es den Ordner gibt, ist die Bedingung wahr. Versuche es mal so

Code:
If Dir(Pfad & Dateiname) <> "" And Dateiname <> "" Then
Gruß Stefan
Win 10 / Office 2016
[-] Folgende(r) 1 Nutzer sagt Danke an Steffl für diesen Beitrag:
  • o0Julia0o
Top
#15
Hallo Stefan,

(27.03.2017, 18:39)Steffl schrieb: Da es den Ordner gibt, ist die Bedingung wahr. Versuche es mal so

das ist nicht war: Ist der Ordner leer, gibt Dir() ohne Suchmuster auch Leer zurück, sonst halt die erste Datei des Ordners.

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • o0Julia0o
Top
#16
Hallöchen,

Altrnativ zu Steffls Codevirschlag könnte man noch

If Dir(...) = Dateiname ...

Nehmen
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • o0Julia0o
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste