Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Excel alle Zellen einer Spalte in separate Textdateien exportieren

Frage Microsoft Microsoft Office

Mitglied: bluemchen

bluemchen (Level 1) - Jetzt verbinden

28.07.2010 um 11:47 Uhr, 9358 Aufrufe, 3 Kommentare

Hallo,
ich möchte alle Zellen einer Spalte (Excel-Dokument) in separate .txt-Dateien exportieren.

das Dokument enthält A1 bis A 23567 Zeilen. Es sollen also 23567 .txt-Dateien mit jeweils dem Inhalt einer Zelle entstehen.

Ich habe dafür folgendes Script verwendet:

Sub ErstelleDateien()
Ziel = "D:\Mein Ordner"
Stellen = 3
Typ = ".txt"
AbZeile = 1
Spalte = "F"
Zeile = AbZeile
Nr = 1000001
Set fso = CreateObject("Scripting.FileSystemObject")
If Right(Ziel, 1) <> "\" Then Ziel = Ziel & "\"
Do While Cells(Zeile, Spalte).Value <> ""
fso.CreateTextFile(Ziel & Right(Nr, Stellen) & Typ).Write Cells(Zeile, Spalte).Value
Zeile = Zeile + 1
Nr = Nr + 1
Loop
End Sub

Leider erhalte ich damit nur die ersten 71 Dateien.
Kenne mich mit dem Thema nicht aus und weiss deshalb nicht, ob es sich um ein Kapazitätsproblem handelt (=es können nur 71 Dateien auf einmal ausgelesen werden) oder ob es am verwendeten Script liegt.

Kann mir jemand helfen?

Viele Grüße
Blümchen
Mitglied: TsukiSan
28.07.2010 um 13:12 Uhr
Hallo blümchen,

was steht denn in Zelle 72 drinnen?
Etwa:

01.
Do While Cells(Zeile, Spalte).Value <> "" 
Dann macht dein Excel es richtig.

Gruss
Tsuki
Bitte warten ..
Mitglied: EffEins
28.07.2010 um 13:23 Uhr
Und wenn das richtig ist, dass es auch Leerzellen gibt, dann ändere die Do-While-Schleife.

01.
  
02.
For i = 1 To ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row 
03.
....... 
04.
Next i


gruß f1
Bitte warten ..
Mitglied: bastla
28.07.2010 um 18:12 Uhr
... und im allerschlimmsten Fall die Zeilen (unelegant) konkret angeben:
01.
Sub ErstelleDateien() 
02.
Ziel = "D:\Mein Ordner" 
03.
Stellen = 5 
04.
Typ = ".txt" 
05.
VonZeile = 1 
06.
BisZeile = 23567 
07.
Spalte = "F" 
08.
 
09.
Nr = 1000001 
10.
Set fso = CreateObject("Scripting.FileSystemObject") 
11.
If Right(Ziel, 1) <> "\" Then Ziel = Ziel & "\" 
12.
 
13.
For Zeile = VonZeile To BisZeile 
14.
    fso.CreateTextFile(Ziel & Right(Nr, Stellen) & Typ).Write Cells(Zeile, Spalte).Value 
15.
    Nr = Nr + 1 
16.
Next 
17.
End Sub
Die Stellenanzahl (für die laufende Nummer) habe ich (passend zu Deiner Vorgabe) auf 5 erhöht ...

Falls Du übrigens, wie oben beschrieben, die Zellen aus Spalte "A" verarbeiten willst, solltest Du die Zeile 7 nochmals überdenken ...

Grüße
bastla

P.S.: Ehe ich's noch ganz vergesse: Willkommen im Forum, bluemchen!
Bitte warten ..
Neuester Wissensbeitrag
Ähnliche Inhalte
VB for Applications
gelöst Excel VBA Eine oder mehrere Zellen Verschieben (2)

Frage von batchnewbie zum Thema VB for Applications ...

Microsoft Office
gelöst Excel 2010 Zellen mit bestimmten Inhalt mit Makro formartierten (5)

Frage von packmann2016 zum Thema Microsoft Office ...

Microsoft Office
gelöst Verschieben von Zellinformation in andere Spalte (per VBA) excel 2010 (5)

Frage von thomas1972 zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (33)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
FritzBox, zwei Server, verschiedene Netze (21)

Frage von DavidGl zum Thema LAN, WAN, Wireless ...

Viren und Trojaner
Aufgepasst: Neue Ransomware Goldeneye verbreitet sich rasant (20)

Link von Penny.Cilin zum Thema Viren und Trojaner ...

Windows Netzwerk
Windows 10 RDP geht nicht (18)

Frage von Fiasko zum Thema Windows Netzwerk ...