Top-Themen

Aktuelle Themen (A bis Z)

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 Ganze tabelle in .csv Speichern.

Mitglied: Hummel85

Hummel85 (Level 1) - Jetzt verbinden

08.08.2006, aktualisiert 15.08.2006, 14137 Aufrufe, 11 Kommentare

Hallo.

Ich würde gern meine Exceldatei(*.xls) in *.csv speichern. Das Problem ist nur das ich nicht die ganze Datei speichern kann sondern nur die einzelnen Tabellenblätter. Da ich aber keine Lust habe die ganzen Tabellenblätter einzeln zu speichern würde ich das gerne so machen.

Also jetzt mal zur Frage gibt es eine Möglichkeit das so zu speichern wenn nicht geht das über ein Makro? Wenn ja wie würde das Makro aussehen?
Mitglied: 16568
10.08.2006 um 12:48 Uhr
Du hast es schon erkannt, das ganze geht nur über ein Makro.
Tabellenblätter auslesen, jedes als Objekt deklarieren, als CSV speichern, feddisch


Lonesome Walker
Bitte warten ..
Mitglied: 8644
10.08.2006 um 13:08 Uhr
Hi,

versuchs mal so:

01.
Sub speichern_als() 
02.
 Dim I_Sheets As Integer 
03.
 Dim F_Name As String 
04.
  
05.
  For I_Sheets = 1 To Sheets.Count 
06.
   F_Name = "E:\Daten\" + Sheets(I_Sheets).Name + ".csv" 
07.
   Sheets(I_Sheets).SaveAs Filename:=F_Name, FileFormat:= _ 
08.
   xlCSV, CreateBackup:=False 
09.
  Next I_Sheets 
10.
End Sub
Psycho
Bitte warten ..
Mitglied: Hummel85
14.08.2006 um 11:26 Uhr
Vielen dank schon mal für die antworten.

Aber hier sind noch ein paar fragen offen.

1. In deine Makro Psycho Dad, steht F_Name = "E:\Daten\" bei mir existiert dieser Pfad aber nicht da E mein DVD-Laufwerk ist. Oder ist das egal? muss ich noch andere Anpassungen vornehmen?

2. wo schreibe ich die Makros rein? und vor allem wie führe ich das Makro dann aus?

3. Bekomm ich bei dem Makro eine art Menü wo ich auswählen kann wo die .csv gespeichert werden soll?

Vielen dank schon ein mal im voraus.
Bitte warten ..
Mitglied: 8644
14.08.2006 um 11:52 Uhr
Moin,

die Pfadangabe muss natürlich angepasst werden. Das ginge evtl. mit einer InputBox:

01.
Sub speichern_als() 
02.
Dim I_Sheets As Integer 
03.
 Dim F_Name As String 
04.
 Dim F_Path As String 
05.
 F_Path = Application.InputBox("Pfad angeben") 
06.
  For I_Sheets = 1 To Sheets.Count 
07.
   F_Name = F_Path + Sheets(I_Sheets).Name + ".csv" 
08.
   Sheets(I_Sheets).SaveAs Filename:=F_Name, FileFormat:= _ 
09.
   xlCSV, CreateBackup:=False 
10.
  Next I_Sheets 
11.
End Sub
Einbinden geht folgendermassen:

Menü Extras -> Makro -> Makros -> hier den Namen Eingeben speichern_als -> Erstellen

jetzt hast du den VBA-Editor vor dir und der Teil

01.
Sub speichern_als() 
02.
End Sub 
steht schon da. Den Rest kopierst du dann rein!
Zum Aufrufen kannst du eine Tastenkombination vergeben oder du positionerst eine Autoform (Symbolleiste Zeichnen) auf dem Blatt und weist dann über das Kontextmenü (rechte Maustaste) das entsprechende Makro zu.

Psycho
Bitte warten ..
Mitglied: Hummel85
15.08.2006 um 07:52 Uhr
Guten Morgen Psycho Dad,

danke für die Antwort. Aber jetzt kommt mein Problem vom 1. mal wieder. Ich möchte alle Tabellenblätter in einer .csv haben. Geht das auch oder muss ich das von Hand kopieren?
Das was ich bis jetzt habe ist auf jeden fall schon mal ein Riesen fortschritt. Und was ich jetzt noch endeckt habe. Wenn ich bei der InputBox auf Abbrechen drücke legt das Makro mir die .csv Dateien einfach in Eigene Dateien. Kann ich da nicht sagen dass das ganze Makro beendet wird?

Und noch eine Excel frage, wie kann ich Makros in jeder Excel Tabelle verfügbar machen ohne das ich das immer in die Tabelle kopieren muss?

Have a nice day

Sebastian
Bitte warten ..
Mitglied: 8644
15.08.2006 um 10:05 Uhr
Moin,

also erstmal zur Problematik des Zusammenführens (hast du vorher nicht erwähnt!).
Ich habe mal vorausgesetzt, dass die Tabellen gleich aufgebaut sind.
Hier wird eine temporäre Tabelle erstellt, in der die Werte aus allen Blättern zusammengefasst werden. Diese wird dann als *.csv gespeichert. Das Blatt wird hinterher wieder gelöscht.

01.
Sub zusammenfuehren_speichern() 
02.
    Dim I_Sheets As Integer        ' Anzahl der Blätter 
03.
    Dim F_Name As String           ' Pfad und Dateiname 
04.
     
05.
    F_Name = InputBox("Pfad und Dateinamen angeben") ' Hier kompletten Pfad und Namen angeben! 
06.
    ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count) ' Temporäre Tabelle erstellen 
07.
                                                                 ' und ans Ende setzen 
08.
    For I_Sheets = 1 To Sheets.Count - 1   ' Zählschleife für Anzahl der Blätter 
09.
                                           ' ohne das neu Erstellte 
10.
     
11.
     Sheets(I_Sheets).Select               ' Tabellenblatt wählen 
12.
     If I_Sheets = 1 Then Range("A1").Select Else Range("A2").Select ' Im ersten Blatt 
13.
                                                                     ' den Kopf mit kopieren 
14.
     Range(Selection, ActiveCell.SpecialCells(xlLastCell)).Select    ' Tabelle bis zu letzten Zelle 
15.
                                                                     ' markieren, die Wert enthält 
16.
     Selection.Copy                        ' Alles in Zwischenablage kopieren 
17.
     Sheets(Sheets.Count).Select           ' Temporäre Tabelle wählen 
18.
     If I_Sheets = 1 Then Range("A1").Select Else Range("A65536").End(xlUp).Offset(1, 0).Select 
19.
                                           ' Ende der Tabelle suchen 
20.
     ActiveSheet.Paste                     ' Werte einfügen 
21.
      
22.
    Next I_Sheets                          ' Ende der Zählschleife 
23.
    ActiveWorkbook.SaveAs Filename:=F_Name, FileFormat:=xlCSV _ 
24.
        , CreateBackup:=False              ' Temporäre Tabelle als *.csv speichern 
25.
     
26.
    ActiveWindow.SelectedSheets.Delete     ' Temporäre Tabelle wieder löschen 
27.
End Sub
Über die anderen Fragen muss ich noch nachdenken - bin auch kein Experte!

Psycho
Bitte warten ..
Mitglied: Hummel85
15.08.2006 um 10:21 Uhr
Vielen dank Psycho Dad.

Ich habe mich wahrscheinlich in der eigentlichen Frage ein wenig bescheiden ausgedrückt aber nun ist ja alles so wie es sein soll.

Wenn du oder ein anderer User eine Idee hat wie ich das machen kann.

Das dieses Makro in allen Excel Tabellen verfügbar ist( also in der art wie ein Template).
Und wenn ich die InputBox Abbrechen drücke das das Makro sich auch Beendet.

Vielen dank schon einmal im Voraus.
Bitte warten ..
Mitglied: 8644
15.08.2006 um 10:29 Uhr
Hi,

hier wird erklärt, wie man Makros global verfügbar macht.

[Edit: Gib mal unter der InputBox-Zeile noch folgendes ein:
01.
If F_Name = "" Then Exit Sub
]

Psycho
Bitte warten ..
Mitglied: Hummel85
15.08.2006 um 11:02 Uhr
Hi,

vielen dank nochmal hat alles wunderbar funktioniert.

Also wünsche ich dir noch einen schönen Tag.
Bitte warten ..
Mitglied: 8644
15.08.2006 um 11:10 Uhr
...kein Thema! Setzt aber bitte den Beitrag auf "Gelöst"

und dir auch noch einen schönen Tag!

Psycho
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
CSV nach CSV durchsuchen und speichern
Frage von jochengBatch & Shell6 Kommentare

Hallo Leute ich fuchtel wieder an einem CSV Problem. Ich habe eine CSV mit Werten die ich nach einer ...

VB for Applications
Speichern als csv
Frage von 123660VB for Applications

Hallo Zusammen, ich habe folgendes problem. ich möchte mein Code anpassen dass er dann Pfad festlegt ohne abfragen. Leider ...

Microsoft Office
Ganze Tabellen dynamisch anzeigen
gelöst Frage von o0Asia0oMicrosoft Office7 Kommentare

Hallo Zusammen Ich würde gerne wissen, ob es möglich ist, ganze Listen anzeigen zu lassen mit einem Befehl. Da ...

Windows Server
Alle User im AD als CSV speichern
Frage von opc123Windows Server6 Kommentare

Hallo, wie kann ich alle User im AD in eine CSV speichern, aber ohne das die im AD gelöscht ...

Neue Wissensbeiträge
Datenschutz

Die Datenkrake Google verlängert ihr Arme mal wieder ein wenig, automatische Anmeldung

Tipp von magicteddy vor 14 StundenDatenschutz2 Kommentare

Benutzer mit einem Google Account und gespeicherten Zugangsdaten werden von chrome 69 automatisch bei Google angemeldet, natürlich alles zum ...

Verschlüsselung & Zertifikate
Meine Wissenssammlung zu Bitlocker
Erfahrungsbericht von DerWoWusste vor 1 TagVerschlüsselung & Zertifikate3 Kommentare

Die Motivation für diesen Beitrag waren die vielen Posts rund um dieses Thema, die deutlich machen, wie viele Einzelaspekte ...

E-Mail
Email-Apps und Verhalten bei Pop3
Erfahrungsbericht von kfranzk vor 3 TagenE-Mail11 Kommentare

Hallo Freunde, da mir mein diesbezüglicher Faden als gelöst markiert wurde, muss ich hier neu aufsetzen. Ich arbeite bewusst ...

Hyper-V

Optimiertes Ubuntu per Microsoft Hyper-V-Schnellerstellung verfügbar

Anleitung von Frank vor 3 TagenHyper-V1 Kommentar

Für Microsofts Virtualisierungssoftware Hyper-V ist ab sofort auch ein optimiertes Ubuntu 18.04.1 LTS verfügbar. In der "Hyper-V-Schnellerstellung" App, die ...

Heiß diskutierte Inhalte
Datenschutz
Gilt ein Ransomware-Befall als Datenpanne nach DSGVO?
Frage von MOS6581Datenschutz22 Kommentare

Moin Kollegen, wenn sich jemand Ransomware einfängt und dadurch bspw. Kundendaten verschlüsselt werden; gilt dies dann als meldepflichtige Datenpanne ...

Hardware
Sophos SG135 - Routing
gelöst Frage von Xaero1982Hardware22 Kommentare

Moin Zusammen, ich ersetze gerade nen alten Cisco DualWAN Router durch eine SG 135. Ich muss bestimmte Ziele über ...

E-Mail
Welche ist die beste E-Mail Groupware für die Zukunft?
Frage von ITCrowdSupporterE-Mail18 Kommentare

Guten Tag allerseits :) Ich möchte mich mit einer Frage heute mal an die Schwarmintelligenz wenden. Aktuell befasse ich ...

Netzwerke
Hilfe bei der Planung meines Heimnetzwerks
Frage von DHD082Netzwerke15 Kommentare

Hallo zusammen, wir bauen gerade ein Einfamilienhaus, welches ich mit einem Heimnetzwerk ausstatten möchte. Da ich zwar auch in ...