ich habe folgende Aufgabenstellung.
Ich habe ein Excel Export aus einem ERP System, dieser aktualisiert sich wöchentlich.
Der Anwender formatiert die Tabelle jede Woche neu, in sein entsprechende Standard Format welches er benötigt.
Somit habe ich nun also eine Excel Datei als "Vorlage" mit der Standard Formatierung.
Nun soll hierbei durch VBA der manuelle copy&paste Vorgang beschleunigt werden.
In der Excel Export Datei gibt es auch Spalten die leer sind, diese sollen nicht mit kopiert werden. Der Aufbau der Excel Export Datei aus dem ERP ist jedes mal gleich, nur die Werte ändern sind.
Des weiteren gibt es 12 Spalten mit den aktuellem Datumswert als Tabellenüberschrift.
Bsp: "PBD-2017-07-12" dies soll nun als korrektes Datum ausgegeben werden "TT.MM.JJJJ" in der Zeile darunter, soll dann jeweils der richtige Wochentag ermittelt und ausgegeben werden, z.B. "Mittwoch".
Mit folgendem Code habe ich bisher eine recht praktikable Lösung gefunden, allerdings wird das Format, die Tabellenüberschrift mit kopiert und nicht in der Zielzeile A4 begonnen den Wert einzufügen.
Public Sub Kopieren()
Dim WkSh_Quelle As Worksheet
Dim WkSh_Ziel As Worksheet
Dim rZelle As Range
Dim aUeberschr As Variant
Dim iIndx As Integer
Dim iSpalte As Integer
aUeberschr = Array("Arbeitsplatz", "Material", "Bezeichnung", "Abladestelle")
Application.ScreenUpdating = False
Set WkSh_Quelle = Worksheets("Tabelle2") ' das Quell-Tabellenblatt
Set WkSh_Ziel = Worksheets("Import_Sheet") ' das Ziel-Tabellenblatt
With WkSh_Quelle.Rows(1)
For iIndx = 0 To UBound(aUeberschr)
Set rZelle = .Find(aUeberschr(iIndx), LookAt:=xlWhole, LookIn:=xlValues)
If Not rZelle Is Nothing Then
iSpalte = iSpalte + 1
WkSh_Quelle.Columns(rZelle.Column).Copy Destination:=WkSh_Ziel.Columns(iSpalte)
End If
Next iIndx
End With
Application.ScreenUpdating = True
End Sub
Geplant ist das folgendermaßen umzusetzen. Es gibt einen Excel Export aus einem ERP System dieser soll in eine neue Excel-Datei (z.B. Zwischenablage) eingelesen werden, in der sich auf die Vorlage befindet. Im Anschluss soll die Vorlage befüllt und eine neue Datei erstellt werden.
Über Unterstützung freue ich mich.