Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Daten per VBA in andere Datei schreiben

Daten per VBA in andere Datei schreiben
15.08.2022 21:07:34
Thomas
Hallo,
ich habe eine Vorlage für Rechnungen, die per Kunde abgelegt wird.
Per kleinem Script wird immer die nächste Rechnungsnummer erzeugt, unabhängig davon, welches Dokument geöffnet ist.
So weit so gut.
Gerne würde ich in eine andere Datei ab B5 die erzeugte Rechnungsnummer nochmals als unendliche Liste hinterlegen, nebst Vorname Name, Kundennummer und Datum der Erzeugung aus der Rechnungsvorlage.
Den Zellpfad muss ich dann wohl selber einfügen, weil ich es für meine Mutter brauche und der sieht ja dort dann nochmal anders aus.
Beide Dateien liegen nicht ganz im gleichen Ordner.
In der Rechnungsvorlage wird bereits in N6 zum Gegenchecken ein Datum hinterlegt.
Vorname Name steht in A8
Kundennummer in P9
Dateien sind mit dabei.
Ich denke, es ist eigentlich nichts großes, aber VBA ist noch gar nichts für mich.
Deshalb großen Dank für eure Hilfe!
Thomas
https://www.herber.de/bbs/user/154660.xlsm
https://www.herber.de/bbs/user/154661.xlsx
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten per VBA in andere Datei schreiben
16.08.2022 09:17:08
Thomas
Also falls der VBA Code, den ich bis jetzt nutze noch gefehlt haben sollte, der aber in der Datei enthalten ist, reiche ich diesen noch vorsichtshalber nach:

 Sub RechnungsNummer()
Dim Antwort As VbMsgBoxResult
Antwort = MsgBox("Soll eine neue Rechnungsnummer erzeugt werden?", vbYesNo, "Makro starten")
If Antwort = vbYes Then
Dim strFile As String
Dim intNo As Integer
strFile = ThisWorkbook.Path & "\factura.ini"
If Dir(strFile)  "" Then
Open strFile For Input As #1
Input #1, intNo: Close
End If
intNo = intNo + 1
Open strFile For Output As #1
Print #1, intNo: Close
Worksheets(1).Range("P8") = intNo
Cells(6, 14) = Now
End If
End Sub

Anzeige
AW: Daten per VBA in andere Datei schreiben
16.08.2022 20:12:57
Thomas
Mir ist es bereits gelungen, die Rechnungsnummern fortlaufend in ein Tabellenblatt der gleichen Datei zu schreiben.
Leider springt er erstens immer dann in das Tabellenblatt, was nicht sein soll.
Wie bekomme ich das denn gelöst, dass er in der Zelle bleibt, die ich ursprünglich ausgewählt habe?
Und die große Frage bleibt, wie bekomme ich das nun in eine Datei, die Rechnungsnummern heißt und im gleichen Verzeichnis liegt geschrieben, z.B. mittels im Hintergrund öffnen, reinschreiben, speichern und wieder schließen? Oder gerne einfach nur reinschreiben ;)
Hier mein aktueller Code:

 Sub Rechnungsnummer()
Dim Antwort As VbMsgBoxResult
Antwort = MsgBox("Soll eine neue Rechnungsnummer erzeugt werden?", vbYesNo, "Makro starten")
If Antwort = vbYes Then
Dim strFile As String
Dim intNo As Integer
strFile = ThisWorkbook.Path & "\factura.ini"
If Dir(strFile)  "" Then
Open strFile For Input As #1
Input #1, intNo: Close
End If
intNo = intNo + 1
Open strFile For Output As #1
Print #1, intNo: Close
Worksheets(1).Range("N8") = intNo
Cells(6, 14) = Now
End If
Dim Rechnungsnummer As String, Kundennummer As String, Kunde As String, Datum As String, Rechnungsbetrag As String
Worksheets("Rechnung").Select
Rechnungsnummer = Range("N8")
Kundennummer = Range("N9")
Kunde = Range("A8")
Datum = Range("M5")
Rechnungsbetrag = Range("M43")
Worksheets("Rechnungsnummern").Select
Worksheets("Rechnungsnummern").Range("B4").Select
If Worksheets("Rechnungsnummern").Range("B4").Offset(1, 0)  "" Then
Worksheets("Rechnungsnummern").Range("B4").End(xlDown).Select
End If
ActiveCell.Offset(1, 0).Select
ActiveCell.Value = Rechnungsnummer
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Kundennummer
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Kunde
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Datum
ActiveCell.Offset(0, 1).Select
ActiveCell.Value = Rechnungsbetrag
End Sub
Danke für etwaige Hilfe!
Thomas
Anzeige
AW: Daten per VBA in andere Datei schreiben
17.08.2022 12:39:38
Herbert_Grom
Hallo Thomas,
in deinem Makro schreibst du, dass die Daten in "Rechnung" hier stehen:
Rechnungsnummer = Range("N8")
Kundennummer = Range("N9")
Kunde = Range("A8")
Datum = Range("M5")
Rechnungsbetrag = Range("M43")
In deiner Datei stehen diese Daten jedoch in den Spalten A & P und in M43 steht schon garnix! Wo stehen sie nun?
Servus
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige