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, 14326 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
Windows 10
Dateien ganz ohne Berechtigung
Frage von StefanKittelWindows 106 Kommentare

Hallo, ich habe gestern etwas komisches gesehen und wollte mal Fragen ob Jemand eine Idee dazu hat. Auf einem ...

Microsoft
PowerShell: CSV in CSV kopieren
gelöst Frage von PludanMicrosoft3 Kommentare

Hallo Ich bin an einem PS Skript dran der den Inhalt von CSV 1 in CSV 2 kopiert. Wie ...

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 ...

Humor (lol)

Sagenhafte Verdienstchancen. (nicht ganz ernstgemeint)

Frage von Penny.CilinHumor (lol)29 Kommentare

Ich habe heute zwei interessante Angebote gesehen / bekommen. Nachdem ich die Recruiter kontaktiert hatte, konnte ich mir das ...

Neue Wissensbeiträge
Windows Mobile

Support für Windows Mobile endet im Dezember 2019

Information von transocean vor 7 StundenWindows Mobile

Moin, MS empfiehlt als Alternative den Umstieg auf IOS oder Android, wie man hier lesen kann. Gruß Uwe

Internet

Kommentar: Bundesregierung erwägt Ausschluss von Huawei im 5G-Netz - Unsere Presse wird immer sensationsgieriger

Information von Frank vor 2 TagenInternet5 Kommentare

Hier mal wieder ein schönes Beispiel für fehlgeleiteten Journalismus und Politik zugleich. Da werden aus Gerüchten plötzlich Fakten, da ...

Windows 10

Netzwerk-Bug in allen Windows 10-Versionen durch Januar 2019-Updates

Information von kgborn vor 2 TagenWindows 101 Kommentar

Nur ein kurzer Hinweis für Admins, die Windows 10-Clients im Portfolio haben. Mit den Updates vom 8. Januar 2019 ...

Windows 10

Windows 10 V1809: Rollout ist gestartet - kommt per Windows Update

Information von kgborn vor 3 TagenWindows 102 Kommentare

Eine kurze Information für die Admins, die Windows 10 im Programm haben. Microsoft hat die letzte Baustelle (die Inkompatibilität ...

Heiß diskutierte Inhalte
TK-Netze & Geräte
TAPI auf einem Win2016Server installieren und einrichten
Frage von wstabelTK-Netze & Geräte32 Kommentare

Hallo liebe Admins, ich habe folgende Situation: 1 Windows Server 2016 Standard als DC 1 SNOM 710 IP-Telefon 1 ...

Off Topic
Darf ich ein Forum erstellen das Produkte eines Herstellers betrifft?
Frage von cyberwallOff Topic8 Kommentare

Hallo Community, ich habe da eine "rechtliche" bzw. allgemeine Frage zum erstellen von Foren. Darf ich als "normale Person" ...

Router & Routing
Unbekannte IPv4 Adresse im Routerprotokoll(Portweiterleitung)
gelöst Frage von tklustigRouter & Routing6 Kommentare

Hallo Leute, folgender Screenshot(ScanVersusPortForwarding.jpg) zeigt die im Routerprotokoll aufgezeigten Portweiterleitungen und alle von einem IPScanner eruierten IPv4 Adressen in ...

Monitoring
Netzwerk bzw VPN wird lahm
Frage von HenereMonitoring5 Kommentare

Servus zusammen, Netzwerk (bzw die Verbindung) sieht so aus: VM-Daten -> 1GBe -> Zyxel USG60W -> VLAN 1GBe -> ...