Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

[VBA] GetDataClosedWB
#11
we are getting there Smile

Cool!

- Allerdings kann ich mit den Const Variablen keine Range angeben, oder?
Denn der jeweilige Wert wird ja aus ner Zelle gezogen.

Pfad = Range("DataPfad")
Dateiname = Range("PreisDatei")
Blatt = Range("Preisblatt")
Zellen = Range("PreisBereich")

Geht nicht irgendwie etwas wie:

Const strPath As String = Pfad 

... hm
Antworten Top
#12
Hallo, :19:

nein, bei einer Konstanten - wie der Name schon sagt - kannst du keine Variable nehmen. Du kannst natürlich auch Dim... As... nehmen. Das ist gehupft wie gesprungen. :21:
________
Servus
Case
Antworten Top
#13
verflixt.

Aus irgendeinem Grund sagt er mir bei jedem Sheet, es sei nicht vorhanden... 

Code:
Dim strPath As String, strFile As String, strSheetName As String, strRange As String, strDestination As String
Dim arrMonate As Variant
Dim arrBlatt As Variant
Dim Zelle As Variant
Pfad = Range("DataPfad")
Dateiname = Range("DataFile")
Zellen = Range("MonatBereich")
Zelle = Range("UpdateMonat")
   arrMonate = Worksheets("Data").Range("C27:C38")
   arrBlatt = Worksheets("Data").Range("D27:D38")
       
        If IsNumeric(WorksheetFunction.Match(Zelle, arrMonate, 0)) Then
                 
        Blatt = arrBlatt(WorksheetFunction.Match(Zelle, arrMonate, 0), 1)
       
       
strPath = Pfad
strFile = Dateiname
strSheetName = Blatt
strRange = Zellen
       
        If ADOSheet(strPath & strFile, strSheetName) = True Then
             If GetDataClosedWB(strPath, strFile, strSheetName, strRange, Worksheets(strSheetName).Range("A:AZ")) Then
             
         MsgBox "Update " & Range("UpdateMonat") & " erfolgreich", vbInformation, "Update"
         Else
       
   End If
   Else
   MsgBox "Sheet nicht vorhanden!"
       End If
        End If
Antworten Top
#14
Hallo,

was für einen Inhalt hat die Variable Pfad?
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#15
Pfad = Range("DataPfad")

und in der Zelle den Pfad .. C:\Users\...\..\..\2020\Data\
Antworten Top
#16
Hallo,

der Pfad existiert und Du hast auch Zugriff darauf?
Gruß Stefan
Win 10 / Office 2016
Antworten Top
#17
jep und jep.

lasse ich 
If ADOSheet(strPath & strFile, strSheetName) = True Then
weg, dann geht es auch...
( If GetDataClosedWB(strPath, strFile, strSheetName, strRange, Worksheets(strSheetName).Range("A:AZ")) Then )

Mit ADOSheet bekomme ich aber bei jedem Blatt die Meldung "FALSCH"
> MsgBox ADOSheet(strPath & strFile, strSheetName)
Antworten Top
#18
Hallo, :19:

ich verwette meinen Ar... - im Tabellnblattname ist mindestens ein Leerzeichen. :21:

Habe noch nie verstanden, wie man Leerzeichen - Umlaute, "ß" oder sonstige ominöse Zeichen in Pfad-, Datei- oder Tabellenblattnamen verwenden kann.

Dann so: :21:

Code:
If objTab.Name = "'" & strSheet & "$'" Then
________
Servus
Case
Antworten Top
#19
Huhu,

stimmt Smile)

- Ändert vorerst trotzdem nix.

Vielleicht hilft uns angehängtes Bild weiter?


Angehängte Dateien Thumbnail(s)
   
Antworten Top
#20
Hallo, :19:

also ich habe es eben mit - strSheetName = "Tab elle 1" - probiert. Geht. :21:
________
Servus
Case
Antworten Top


Gehe zu:


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