TweakPC

Zurück   Computer Hardware Forum - TweakPC > Games und Software > Programmiersprachen

Antwort
 
LinkBack Themen-Optionen Thema bewerten Ansicht
Alt 17.11.2008, 11:08   #1 (permalink)
Stickstoff Junkie
 
Benutzerbild von Fabian
 
Registriert seit: 02.02.2002
Ort: Jena
Beiträge: 3.678

Fabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer Anblick

Standard CSV-Dateien kombinieren

Hi,

ihr seid doch immer fit und habt gute Ideen.

Ich möchte rund 100 CSV-Dateien kombinieren. Ich mache es jetzt mal als Beispiel mit zwei Dateien:

1,A
2,B
3,C
4,D

1,E
2,F
3,G
4,H

Und das soll zu

1,A,E
2,B,F
3,C,G
4,D,H

kombiniert werden.

Kurze Frage: Wie und womit?

Danke schon mal an alle für die guten Ideen!
Fabian
News-Redakteur
[TweakPC Team]

"Only wimps use tape backup: _real_ men just upload their important stuff
on ftp, and let the rest of the world mirror it" (Zitat Linus Torvalds)
Fabian ist offline   Mit Zitat antworten
Alt 17.11.2008, 12:45   #2 (permalink)
TPC-InventarNr. 1337
 
Benutzerbild von io.sys
 
Registriert seit: 11.04.2002
Ort: Augusta vindelicorum
Beiträge: 14.010

io.sys kann auf vieles stolz sein
io.sys kann auf vieles stolz seinio.sys kann auf vieles stolz sein

Standard AW: CSV-Dateien kombinieren

Kannst Du das nicht über Excel machen?

Die CSV-Datei einlesen und dann eben die "Source-Spalten" kombinieren nach Formel in die "Ziel-Spalte".

peta: people eating tasty animals
io.sys ist offline   Mit Zitat antworten
Für diesen Beitrag bedankt sich:
Fabian (17.11.2008)
Alt 17.11.2008, 16:14   #3 (permalink)
semi-diabolisch
 
Benutzerbild von [EID]-Mr.GiZMO
 
Registriert seit: 12.09.2005
Ort: Zwickau
Beiträge: 2.883

[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein

Standard AW: CSV-Dateien kombinieren

Hallo,

ich hab dir mal ein Makro geschrieben.

Vorgehensweise:
- neue Datei "result.csv" erstellen
- VB-Editor Starten (ALT+F11)
- neues Modul erstellen (Symbolleiste, zweites Icon, Modul)
- Makro einfügen
- STRG + S
- ALT + F4
- Menüeintrag Makros wählen
- Makro "import" starten
- Dateien wählen
- warten
- freuen
- Danke sagen


Vorraussetzung:
Die zu kopierenden Daten liegen, wie von dir beschrieben alle in der ersten Spalte der Quelldateien.



Und hier der Übeltäter:
Code:
Sub import()


Dim actualLine As Integer   ' aktuelle Zeile
Dim actualRow As Integer    ' aktuelle Spalte
Dim Spaltefrei As Boolean   ' Prüfbool

actualLine = 1
actualRow = 1
Spaltefrei = False


' Testrutine für aktuelle Einfügepostion
While Spaltefrei = False
    If Cells(actualLine, actualRow).Value <> \\"\\" Then
        actualRow = actualRow + 1
    Else
        Spaltefrei = True
    End If
Wend



' Dateien wählen
Dim Dateien As Variant
Dim Dateizaehler As Integer
Range(\\"X998\\").Value = \\"\\"
Range(\\"X999\\").Value = \\"\\"
Range(\\"X998\\").Select
Dateien = Application.GetOpenFilename(\\"Alle-Dateien (*.*),*.*,\\", MultiSelect:=True)
On Error GoTo ERRORHANDLER

For Dateizaehler = 1 To UBound(Dateien)
    Wert = Dateien(Dateizaehler)
    
    Range(\\"X998\\").Value = Wert
    Wertlänge = Len(Wert)
    
    For k = 1 To Wertlänge
        Wertrechts = Right(Wert, k)
        Slash = Left(Wertrechts, 1)
        Select Case Slash
            Case Is = \\"\\\"
            Wertname = Right(Wert, k - 1)
            Range(\\"X999\\").Value = Wertname
            GoTo weiter
        End Select
    Next k
weiter:
    Range(\\"X998\\").Select
    
    ' Voller Dateiname mit Pfad zum öffnen benötigt
    Dim FullFileName As String
    FullFileName = Range(\\"X998\\").Value
    
    ' Nur Dateiname ohne Pfad zum Wechseln der Dateien in Excel benötigt
    Dim JustFileName As String
    JustFileName = Range(\\"X999\\").Value
    
    
    
    ' Kopiervorgang Start
    If FullFileName <> \\"\\" And JustFileName <> \\"\\" Then
        
        ' Original öffnen
        Workbooks.Open Filename:=FullFileName
        
        ' erste Spalte markieren und kopieren
        Range(\\"A1:A999\\").Select
        Selection.Copy
                
        ' Zieldatei öffnen
        Windows(\\"result.csv\\").Activate
        
        ' oberste Zelle in nächster leerer Spalte wählen
        Cells(actualLine, actualRow).Select
        
        ' Einfügen
        Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks:=False, Transpose:=False
            
        ' Zwischenablage leeren
        Application.CutCopyMode = False
        
        ' Reihenzähler + 1
        actualRow = actualRow + 1
    
        ' Quelldatei aktivieren und schließen
        Windows(JustFileName).Activate
        Windows(JustFileName).Close
            
        
    End If
    ' Kopiervorgang Ende '
        
        
' Nächste Datei
Next Dateizaehler


ERRORHANDLER:
    Exit Sub
    



End Sub
:gizmo:
War mein Post nützlich für dich? Ein Danke oder eine Bewertung sind immer schön.
Teilnehmer der Initiative "User verbessern Qualität im Forum" | Meine Systeme

Darf ich mal bitte vorbei?! Das geht nach Kompetenz... Danke! | | | Einmal dachte ich, ich hätte Unrecht. Hab mich aber getäuscht!
"Es ist gelogen, dass Videogames Kids beeinflussen. Hätte Pacman das getan, würden wir heute durch dunkle Räume irren, Pillen fressen und elektronische Musik hören."

[EID]-Mr.GiZMO ist offline   Mit Zitat antworten
Für diesen Beitrag bedankt sich:
Fabian (17.11.2008)
Alt 17.11.2008, 19:51   #4 (permalink)
Stickstoff Junkie
 
Benutzerbild von Fabian
 
Registriert seit: 02.02.2002
Ort: Jena
Beiträge: 3.678

Fabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer Anblick

Standard AW: CSV-Dateien kombinieren

Zitat:
Zitat von io.sys Beitrag anzeigen
Kannst Du das nicht über Excel machen?

Die CSV-Datei einlesen und dann eben die \"Source-Spalten\" kombinieren nach Formel in die \"Ziel-Spalte\".
Ne das geht leider nicht, ich muss dies des öfteren machen, das soll also vollkommen automatisch funktionieren.
Fabian ist offline   Mit Zitat antworten
Alt 17.11.2008, 19:54   #5 (permalink)
Stickstoff Junkie
 
Benutzerbild von Fabian
 
Registriert seit: 02.02.2002
Ort: Jena
Beiträge: 3.678

Fabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer AnblickFabian ist ein wunderbarer Anblick

Standard AW: CSV-Dateien kombinieren

Danke [EID]-Mr.GiZMO, das sieht doch schon sehr gut aus. Ich habs heute Nachmittag dann mit Matlab auch eben (6 Zeilen) gelöst, da sieht der VB-Code ja reudig aus
Aber ich probiers morgen mal mit deinem Code.
Fabian ist offline   Mit Zitat antworten
Alt 17.11.2008, 20:00   #6 (permalink)
semi-diabolisch
 
Benutzerbild von [EID]-Mr.GiZMO
 
Registriert seit: 12.09.2005
Ort: Zwickau
Beiträge: 2.883

[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein[EID]-Mr.GiZMO kann auf vieles stolz sein

Standard AW: CSV-Dateien kombinieren

Der Hauptteil ist ja auch das automatisierte Öffnen der Dateien.

Im Übrigen seh ich und verfluche grad die schei$$ Doppelbackslashes vor jedem "
Das nervt.
[EID]-Mr.GiZMO ist offline   Mit Zitat antworten
Antwort

Stichworte
csv-dateien, kombinieren


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir erlaubt, neue Themen zu verfassen.
Es ist dir erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
RAM Kombinieren djberny RAM 14 03.05.2007 05:23
CSV Converter DaKarl Windows & Programme 4 08.02.2006 20:08
SATA mit ATA kombinieren?!?! DomiM Festplatten und Datenspeicher 9 09.02.2005 14:56
S-ATA und IDE kombinieren? DerKleriker Festplatten und Datenspeicher 2 27.05.2004 15:51
zwei GraKas kombinieren? Gast Grafikkarten und Displays allgemein 5 07.09.2003 10:25


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:34 Uhr.




Powered by vBulletin® Version 3.8.7 (Deutsch)
Copyright ©2000 - 2013, vBulletin Solutions, Inc.
SEO by vBSEO 3.5.2 ©2010, Crawlability, Inc.
Impressum - Hardware-Links - Partner
Copyright © 1999-2013 TweakPC, Alle Rechte vorbehalten, all rights reserved