habe das hier gerade schon versucht zu Posten. Hat aber nicht geklappt...
So oft habe ich in Foren dieser Art nach Hilfe gesucht und bin auch bisher immer fündig geworden... Jetzt brauche ich aber Hilfe.
Info vorweg: Ich habe keine Ahnung von Makros und auch nicht von VBA. Ich kann lediglich einen Makro aufzeichnen.
In Tabelle 4 werden automatisch Daten aus Tabelle 2 erzeugt. Beduetet, dass in Tabelle 4 überall Formeln hinterlegt sind, von A1 bis J1200. In Tabelle 4 werden in A1 bis J (mal bis J10 aber auch mal bis J350 oder noch weiter bis J980) unterschiedliche Informationen dargestellt. Die Spalte A, B und J sind immer mit Daten gefüllt.
Ich möchte einen Makro haben, der aus dem Tabellenblatt 4 eine gesonderte CSV Datei erstellt. Diese soll an einem Speicherort (O:\Technik\IMPORTE) abgespeichert werden. WICHTIG: Es dürfen keine Leerzeilen "mitgenommen" werden.
Bedutet, ab einer bestimmten Zeile sind überhaupt keine Informationen mehr zu sehen. Ab dieser Zeile bis 1200 sind nur Formeln vorhanden. Diese Leerzeilen dürfen nicht in der CSV Datei vorhanden sein. Denn ich muss das in mein Warenwirtschaftssystem importieren und das geht nur ohne Lerzeilen.
Da es sich hier um eine Importdatei handelt, die ich selber gebastelt habe, brauche ich ein Makro, der jedes Mal gemäß o.g. Anforderungen eine CSV Datei erstellt.
Sorry, dass ich so viel geschrieben habe. Hoffe, dass das einigermaßen verständlch war..
Ich füge hier noch ein Bild ein, um das ganze zu veranschaulichen.
Ich wäre euch wirklich dankbar, wenn ihr mir ein MAkro schreiben könntet, dass ich einfach kopieren und einfügen kann.
Hallo, anstatt des Bildes wäre eine Beipieldatei besser gewesen. Denn Deine Daten tippe ich mit Sicherheit nicht ab. Ansonsten kann ich Dir sagen wenn man ein Kriterium hat wie eine gültige Zeile erkennbar ist, sollte das kein Problem sein.
Grüße aus Nürnberg Armin Ich benutze WIN 10 (64bit) und Office 19 (32bit)
Zitat:habe das hier gerade schon versucht zu Posten. Hat aber nicht geklappt...
doch, hat es. Du hast es aber (fälschlicherweise) im VBA-Forum gepostet; dort müssen Beiträge erst freigegeben werden. Deinen doppelten Beitrag habe ich ins Archiv verschoben.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Moin auch von mir! Es gibt die Range.ExportAsFixedFormat–Methode. Die Voraussetzung zum Begrenzen des Ranges hast Du nur umschrieben, aber nicht konkretisiert.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
vielen Dank für deine Antworten. Bedauerlicherwiese verstehe ich deine Kommentare nicht, wie "Range.ExportAsFixedFormat Method". Habs gegoogelt, es scheint aber nicht zu helfen.
Zu deiner Frage, wie die Range begrentzt wird.
Die Kunde schicken Anfragen mit immer gleichen Artikelnummern und unterschiedlich vielen Positionen. Mal sind es 50 Positionen, mal sind es 850 Positionen. Die Artikelnummern mit den Mengen werden vom Sachbearbeiter in die Tabelle 2 (Bezeichnung Schritt1) eingefügt. Die Tabelle 4, die ich hier gepostet habe, ist eine Formeltabelle. Die Spalte A gibt die Positionsnummer in 10er Schritten an. Hier ist die Formel =WENN(Schritt1!$C266>1;Schritt1!$A266;"") Bedeutet also, wenn in der Tabelle 2 (Schritt 1) in der Spalte C266 eine Artikelnummer steht, erscheint in A266 die Positionsnummer 2650. Da in C267 der Tabelle 2 (Schritt 1) keine Artikelnummer steht, erscheint auch in Tabelle 4 in A 267 keine Positionsnummer. Bedutet, dass die CSV Datei nur von A1 bis J266 gehen darf.
Ich glaube jetzt eine Lösung mit der Aufzeichnungsfunktion gefunden zu haben. Kann bitte jemand sagen, wie ich die automatisierte Bennenung der Datei ändere?
Ich habe den VBA COde hier eingefügt und den entrsprechenden Besztandteil eingefärbt. Die Datei soll anstatt "Mappe1" immer wie foglt heißen"importdateiheutigesdatumunduhrzeit.csv". Also zum Beispiel "importdatei091120180955" Bedeutet, dass die Datei am 09.11.2018 um 09:55Uhr erzeugt wurde.
Jetzt habe ich gerade bemerkt, dass die CSV Datei beim ersten abspeichern wie die xls Tabelle in Spalten abgespeichert wird. Ab dem zweiten Mal mit Kommatas als Trennzeichen in einer Spalte. Das Format in dem die Daten der CSV Datei in einer Spalte abgespeichert sind und mit Kommatas getrennt, kann ich nicht in mein IT System importieren.
Wie kriege ich es hin, dass die Daten immer in Spalten abgespeichert werden.
Ich hab die zwei CSV Dateien angefügt und sie als "richtig" und "falsch" benannt. So wie ich das im Editor Modus sehe, beinhaltet die "falsche" das Komma als Trennzeichen und die "richtige" ein Semikolon.
Was kann ich machen, dass die CSV Datei immer richtig abgespeichert wird.
(ich arbeite mit Excel auf einem Servcer. Länderienstellungen und Co. kann und darf ich nicht ändern)