Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1496to1500
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zellenwerte in neuer Datei speichern

Zellenwerte in neuer Datei speichern
15.06.2016 10:13:54
Sepp
Hallo zusammen,
ich wollte mal fragen wie die Vorgehensweise ist wenn ich die Werte aus der Tabelle (gelb hinterlegt) in eine neue csv Datei speichern will?
Dabei soll die Referenz die Zeile "Gruppe" sein. Und dort immer eine Spalte weiter bis die Zelle leer ist! (Also in dem Fall gäbe es eine CSV mit 4 Zeilen)
in der neuen CSV Datei sollen die Daten dann in Zeilen gespeichert werden! Ungefähr so: (die A-Nummer soll immer davor)
A123456;01;Text Gruppe 1;500
A123456;02;Text Gruppe 2;500
Geht das irgendwie über eine Schleife?
Gruß
Userbild

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zellenwerte in neuer Datei speichern
15.06.2016 10:25:17
Fennek
Hallo,
hier meine Vorlage, um Text in eine Datei zu schreiben:

Sub wr_Txt_File()
sPfad = "c:\temp\"
sFile = "wr-test.txt"
Open sPfad & sFile For Output As #1
Print #1, "Hallo World"
Print #1, "Bye"
Print #1, Cells(1, 1)
Write #1, "new line"
Write #1, Cells(1, 1)
Close #1
End Sub
Anstelle von "Hello WorldW muss eine String mit den Daten übergeben werden. Wenn nicht klappt, melde dich noch einmal.
mdf

AW: Zellenwerte in neuer Datei speichern
15.06.2016 10:30:53
Daniel
Hi
das funktioniert auch ohne Schleife.
am einfachsten ist folgende Vorgehensweise:
1. neue Datei erstellen
2. werte, die in die CSV sollen, per Copy-Paste (ggf mit Transpose) in die neue Datei übertragen
3. neue Datei als CSV speichern.
Sub test()
Dim rngPos As Range
Dim rngGrp As Range
Dim rngBet As Range
Dim rngAng As Range
Dim wb As Workbook
With ActiveSheet
Set rngGrp = .Cells.Find(what:="Gruppe", Lookat:=xlWhole)
Set rngPos = .Cells.Find(what:="Pos.", Lookat:=xlWhole)
Set rngBet = .Cells.Find(what:="Betrag", Lookat:=xlWhole)
Set rngAng = .Cells.Find(what:="Angebot Nr.:", Lookat:=xlWhole)
End With
Set rngGrp = Range(rngGrp.Offset(0, 1), rngGrp.End(xlToRight))
Set rngPos = Intersect(rngPos.EntireRow, rngGrp.EntireColumn)
Set rngBet = Intersect(rngBet.EntireRow, rngGrp.EntireColumn)
With Workbooks.Add(xlWBATWorksheet)
With .Sheets(1)
rngAng.Copy
.Cells(1, 1).Resize(rngGrp.Cells.Count).PasteSpecial xlPasteValues
rngPos.Copy
.Cells(1, 2).PasteSpecial xlPasteValues, Transpose:=True
rngGrp.Copy
.Cells(1, 3).PasteSpecial xlPasteValues, Transpose:=True
rngBet.Copy
.Cells(1, 4).PasteSpecial xlPasteValues, Transpose:=True
End With
.SaveAs Filename:="hier dein Dateinname ohne Dateiendung", FileFormat:=xlCSV, local:=True
.Close False
End With
End Sub
ist jetzt nicht getestet, weil ich dein Bild nicht per Copy-Paste nach Excel übertragen kann und ich das nicht nochmal abschreiben will.
Gruß Daniel

Anzeige
AW: Zellenwerte in neuer Datei speichern
15.06.2016 12:08:28
Sepp
Hallo Daniel,
super Danke das klappt schon ganz gut. Muss mir bei einigen Sachen nur mal noch beibringen was sie genau bedeuten :-)
Einzig die Angebotsnummer übernimmt er nicht! Da schreibt er das in die csv:
Angebot Nr.:;1;Text Gruppe 1;500
Angebot Nr.:;2;Text Gruppe 2;500
Angebot Nr.:;3;Text Gruppe 3;500
Angebot Nr.:;4;Text Gruppe 4;500
Wo genau ist den im Sript da die Zuordnung welches Feld er holt?
Und ist es jetzt auch egal wieviel Gruppen ich da noch einfüge also eventuell einfach noch Spalten mache vielleicht bis 15? Und wenn ich jetzt zwischen Gruppe und Betrag noch Zeilen einführe übernimmt er dann Betrag auch noch richtig oder muss ich das angeben?
Gruß Sebastian
PS: Mit Datei klappts besser: https://www.herber.de/bbs/user/106255.xlsm

Anzeige
AW: Zellenwerte in neuer Datei speichern
15.06.2016 13:04:50
Daniel
Hi
naja, das siehst du doch am Anfang, wo er nach dem Text "Angebot Nr.:" sucht und diese Zelle der Variablen rngAng zuweist
ich hab da leider nur vergessen, dass der Wert ja 2 Zellen weiter rechts steht, dh du musst das so ergänzen;

Set rngAng = .Cells.Find(what:="Angebot Nr.:", Lookat:=xlWhole).Offset(0, 2)

Gruß Daniel

AW: Zellenwerte in neuer Datei speichern
16.06.2016 07:37:11
Sepp
Hallo Daniel,
sorry hat etwas länger gedauert! Ja danke das hab ich mir auch etwas durchgelesen und kappiert!
Aber ich habe jetzt ein kleines Problem. Wenn ich das Makro jetzt ausführe kommt immer der Dialog "Die Datei ist im Ordner schon vorhanden. Soll diese überschrieben werden?"
Das Problem ist es gibt keine test.csv Datei im Ordner! Und auch wenn ich das überschreiben bestätige gibt es dort keine Datei :-)
Gruß Sebastian

Anzeige
AW: Zellenwerte in neuer Datei speichern
16.06.2016 08:31:32
Daniel
HI
sorry, ich kenne weder deine Datei, noch dein Makro, noch deine Dateistruktur auf deinem Ordner.
da kann ich dir jetzt leider nicht weiterhelfen.
Gruß Daniel

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige