Arbeitsblatt (.csv) kopieren
#1
Hallo ihr Lieben,

hab hier schon einiges an Formel im Forum ausprobiert, leider ohne Erfolg. Das Thema wurde sicherlich schon zigmal behandelt aber es will bei mir einfach nicht klappen :(

Ziel Kopiere den Inhalt eines nicht geöffneten Arbeitsmappe/Blatt in eine Andere Mappe:

Bespiel:
Tabelle: Auswertungen
Blatt: Kunden / Bewertung / Daten

Tabelle: Kundenhistorie (ist eine .csv  Datei )
Blatt: Kundenhistorie

Er soll jetzt die Daten der nicht geöffnete Kundenhistorie in dem Arbeitsblatt Auswertungen , Blatt Daten wiedergeben. Beide Tabelle befinden sich auf dem gleichen Server/Ordner

Versuche bei geöffneter Mappe und Makros haben funktioniert, leider muss ich bei Tabelle Auswertungen auf Makros verzichten, wenn möglich.

Herzlichen Dank für jeden Tipp.

Drakecore
Top
#2
Hallo,

bei einer Quelldatei die im XLS-Format vorliegt könnte man mit einer Verknüpfung arbeiten wie ='C:\Test\[Kundenhistorie.xls]Kundenhistorie'!A1 oder zur Not auch mit einem Sverweis =SVERWEIS($A2;'C:\Test\[Kundenhistorie.xls]Kundenhistorie'!$A:$C;SPALTE();0) aber bei einer CSV-Datei funktioniert das anscheinend nicht (zumindest hat ein kurzer Test das so ergeben).

Ich lasse mich hier gerne eines besseren belehren, aber vermutlich wird ohne VBA oder ohne geöffnete Quelldatei das nicht machbar sein.
Gruß
Peter
[-] Folgende(r) 1 Nutzer sagt Danke an Peter für diesen Beitrag:
  • Drakecore
Top
#3
Hallo,

als Idee:
Du legst Dir eine "Vorlage" mit Makro zum Import der csv-Datei an, liest Dir die Daten ein und speicherst sie als *.xlsx.

Gruß
Ich
Top
#4
(23.09.2016, 10:35)Peter schrieb: Hallo,

bei einer Quelldatei die im XLS-Format vorliegt könnte man mit einer Verknüpfung arbeiten wie ='C:\Test\[Kundenhistorie.xls]Kundenhistorie'!A1 oder zur Not auch mit einem Sverweis =SVERWEIS($A2;'C:\Test\[Kundenhistorie.xls]Kundenhistorie'!$A:$C;SPALTE();0) aber bei einer CSV-Datei funktioniert das anscheinend nicht (zumindest hat ein kurzer Test das so ergeben).

Ich lasse mich hier gerne eines besseren belehren, aber vermutlich wird ohne VBA oder ohne geöffnete Quelldatei das nicht machbar sein.

Hallo Peter vielen dank für deine Antwort, hab mal die csv in eine Xlsx gespeichert, mit folgendem Ergebnis:

 ='C:\Test\[Kundenhistorie.xls]Kundenhistorie'!A1   es wird nur A1 kopiert ich kann die Formal manuell Spalten und Zeilen Weise ziehen dann wir alles kopiert, leider nicht automatisch.

=SVERWEIS($A2;'C:\Test\[Kundenhistorie.xls]Kundenhistorie'!$A:$C;SPALTE();0)  Fehlermeldung der Wert ist nicht verfügbar


Hoffe auf weitere Tipps Danke!
Top
#5
(23.09.2016, 10:48)IchBinIch schrieb: Hallo,

als Idee:
Du legst Dir eine "Vorlage" mit Makro zum Import der csv-Datei an, liest Dir die Daten ein und speicherst sie als *.xlsx.

Gruß
Ich

Danke für Deine Antwort, leider funktioniert das nur mit erheblichen Aufwand und nicht so wie gewünscht, da ist das manuelle reinkopieren der Tabelle ein klacks dagegen ::)  als xlsx zu speichern wäre keine Problem, leider funktioniert das mit dem Format auch nicht.
Top
#6
Hallo,

Zitat:='C:\Test\[Kundenhistorie.xls]Kundenhistorie'!A1 es wird nur A1 kopiert

Die Formel muss natürlich nach rechts und nach unten kopiert werden damit die anderen Werte übernommen werden. Ob das allerdings sinnvoll ist kann ich, mangels Kenntnis des Tabellenaufbaus nicht beurteilen.

Zitat:=SVERWEIS($A2;'C:\Test\[Kundenhistorie.xls]Kundenhistorie'!$A:$C;SPALTE();0) Fehlermeldung der Wert ist nicht verfügbar

Hier liegt die Annahme zugrunde, dass in A2 ein Wert steht bzw. eingetragen wird, der im Tabellenblatt Kundenhistorie in Spalte A zu finden ist und dann werden, wenn die Formel nach rechts kopiert wird, die entsprechenden Werte der Spalten B und C wiedergegeben. Der Sverweis funktioniert auch bei geschlossenen Dateien.

Beide Formeln habe ich eigentlich nur geschrieben um den Ansatz zu testen. Ob diese Formeln letztendlich weiterhelfen kann ich von dieser Stelle noch nicht beurteilen, da wäre es notwendig den genauen Tabellenaufbau der beiden Dateien zu kennen und zu wissen was letztendlich das Ziel der Aktion ist.
Gruß
Peter
Top
#7
(23.09.2016, 10:59)Drakecore schrieb: Danke für Deine Antwort, leider funktioniert das nur mit erheblichen Aufwand und nicht so wie gewünscht, da ist das manuelle reinkopieren der Tabelle ein klacks dagegen ::)  als xlsx zu speichern wäre keine Problem, leider funktioniert das mit dem Format auch nicht.


Hi,

schau Dir mal den Beitrag 13 hier an.

Ich kenne den Aufbau Deiner csv-Datei auch nicht.
Aber mit dem Makro, kannst Du die Daten aus der CSV "platt" in eine Tabelle kopieren.

Gruß
Ich
Top
#8
In der Kundenhistorie Gibt es Daten in den Spalten A - N und kann bis zu 10.000 Zeilen haben. Ein Makro welches hier die Formel kopieren soll führt zum Absturz von Excel ^^.

In Spalte A ist immer eine Zahl.

In B Datum und Text

Alle anderen Zelle sind teilweise gefüllt.

Hatte so gehofft es gibt eine Formel die einfach alle Daten aus einer geschlossen Excel Datei in ein Arbeitsblatt kopiert :(

Mit Makro hab ich nicht 10.000 Nullen die ich da auch nicht gebrauchen kann.
Top
#9
(23.09.2016, 11:07)IchBinIch schrieb: Hi,

schau Dir mal den Beitrag 13 hier an.

Ich kenne den Aufbau Deiner csv-Datei auch nicht.
Aber mit dem Makro, kannst Du die Daten aus der CSV "platt" in eine Tabelle kopieren.

Gruß
Ich
Vielen Dank. 

das könnte was sein, nur muss mich jetzt irgendwie das an meine Ordnerstruktur anpassen ::(

Beide Tabellen liegen bei mir auf H:\VM Kundenhistorie\          Kundenhistorie.csv  und   Kundenauswertung.xls
Top
#10
Hallo,

Zitat:Mit Makro hab ich nicht 10.000 Nullen die ich da auch nicht gebrauchen kann.

bei einer Formellösung gibt es verschiedene Möglichkeiten um eine 0 nicht darzustellen.

Eine Formel würde ich dann nehmen, wenn ich z.B. die Kundenhistorie als Quelldatei ansehe und mir dann für einen oder mehrere Kunden, basierend auf der Kd.Nr. in Spalte A, die Daten einlesen will.

Aber wenn du die komplette Tabelle kopieren willst dann ist m.E. die VBA-Lösung der bessere Weg.
Gruß
Peter
Top


Gehe zu:


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