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.

Datenimport per VBA
#1
Guten Tag,
 
Ich bin derzeit dabei eine Exceltabelle auf Arbeit zu bauen und bin jetzt an einer Funktion angekommen bei der ich VBA benötige. Jetzt ist allerdings das Problem das ich wenig Ahnung von VBA habe, deshalb frage ich hier.
Was soll die Funktion können:
 
Ich würde gern per Dialog Daten von einen beliebigen externen Exceldatenblatt mit allen Formatierungen(Farbe, Rahmen etc.) importieren.
 
Ich habe bereits nach langem suchen diesen VBA Code gefunden und ein bisschen anpassen können, Dieser macht auch fast das was ich will,
das was noch fehlt das er die Formatierungen mit kopiert.
 
Sub Planungsreport()
Dim rng As Range, _
    sFile As String, sPath As String, _
    oldStatusBar As Boolean
    Application.ScreenUpdating = False
    oldStatusBar = Application.DisplayStatusBar
    Application.DisplayStatusBar = True
    sFile = "Test"
    sPath = ThisWorkbook.Path & "\"
    Application.StatusBar = "Daten werden importiert. Bitte warten..."
    With Sheets(1)
      .Range("A1:AZ900").Formula = "='" & sPath & "[" & sFile & _
        "]mööp'!A1:E100"
      Set rng = .Range("A1:AZ900")
    End With
    rng.Cells(1).Copy rng
    rng.Value = rng.Value
    Application.ScreenUpdating = True
    Application.StatusBar = False
    Application.DisplayStatusBar = oldStatusBar
    
        
End Sub
 
Ich hoffe Ihr könnt mir hier weiterhelfen und bedanke mich schonmal für eure Erfahrung.
Antworten Top
#2
Moin!
Dein Code holt sich die Daten per Formel und tauscht die Formel mit dessem Wert.
Wenn Du es "mit allem" willst, musst Du die Quelldatei öffnen und deren Daten kopieren.


Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#3
hm ok verstehe jetzt bleibt die frage wie kann ich das am besten umsetzen da Problem ist das die Dateien unterschiedliche Namen habe und somit muss die Datei sowie auch das Tabellen Blatt per Dialog geöffnet werden. Im Anschluss der komplette Inhalt kopiert und auf dem aktiven Tabellen Blatt eingefügt werden mit allen Formatierungen. 

Ich Frage zwar nicht gern ob jemand für mich etwas macht nur leider habe ich in VBA keine Ahnung und muss deshalb auf das Wissen von anderen zurückgreifen.
Antworten Top
#4
Hallo David,

Am Anfang hilft auch der Macrorecorder etwas. Wenn Du der Reihe nach alles machst, was beim Kopieren und Einfügen nötig ist, klappt das meist. Du solltest dazu aber vor dem Aufzeichnen eine beliebige Zelle, die mit dem Kopieren und einfügen nichts zu tun hat, auswählen und wenn Du mehrere Blätter in der Datei hast auch ein anderes Blatt. (Gilt für Quell- und Zieldatei)
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


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