BITTE helfen Sie uns HEUTE mit einer SPENDE
Helfen Sie das LibreOffice Forum zu erhalten!

❤️ DANKE >><< DANKE ❤️

> KEINE WERBUNG FÜR REGISTRIERTE BENUTZER!<
Ihre Spende wird für die Deckung der laufenden Kosten sowie den Erhalt und Ausbau 🌱 des LibreOffice Forums verwendet.
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

Rechnungsnummer generieren

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
cynep8
Beiträge: 26
Registriert: Mi 15. Mär 2017, 21:06

Rechnungsnummer generieren

Beitrag von cynep8 » Mo 16. Apr 2018, 21:54

Hallo liebes Forum,
ich habe mal wieder ein Frage zu einem Makro. Ich würde gerne über einen Button eine Rechnungsnummer generieren.
Die Rechnung wird über eine Vorlage jedes mal neu erstellt. Im Moment wird die Rechnungsnummer immer von Hand eingetragen und von einer Liste weg gestrichen. Leider wird das wegstreichen des öfteren vergessen und nummern werden doppelt vergeben. :roll:
Mein Gedanke war in einer anderen Datei die Rechnungsnummer ab zuspeichern. In der Rechnungsvorlage gibt es einen Button der liest erst aus dieser Datei die Nummer aus, erhöht Sie um eins und schreibt Sie in das Rechnungsnummernfeld, sowie in die vorher ausgelesene Datei. Die Rechnungen werden nur an einem Computer erstellt, weshalb ein gleichzeitiger Zugriff nicht vorkommen sollte.
Wichtig ist mir das ich die Rechnungsnummer einfach korrigieren kann falls jemand in der Rechnung mist gebaut hat.

Vor 2 Tagen hatte ich schon zumindest ein Makro gefunden welches den Wert aus einer Zelle in eine .txt Datei schreibt. Komme leider im Moment nicht mehr an diese experimentier Datei ran bzw. finde das Beispiel nicht mehr im Netz. Sobald ich es finden sollte würde ich es auch gleich noch mal posten.

Macht mein Gdankengang sinn? Oder ist es eine schlechte Vorgehensweise?
Ich hoffe Ihr könnt mir helfen!



Gruß Cynep8

Lupo
Beiträge: 279
Registriert: Do 11. Okt 2012, 14:22

Re: Rechnungsnummer generieren

Beitrag von Lupo » Di 17. Apr 2018, 07:20

MfG Lupo - xxcl.de Win10ProLO6062

cynep8
Beiträge: 26
Registriert: Mi 15. Mär 2017, 21:06

Re: Rechnungsnummer generieren

Beitrag von cynep8 » Di 17. Apr 2018, 21:02

Hallo Lupo,
danke für deine Antwort! Ist aber nicht ganz was ich gesucht habe.
Mittlerweile konnte ich mir mit verschiedenen Makrocodes was zusammen basteln. :mrgreen:
Leider nicht sehr elegant, dafür fehlen mir die Kenntnisse :oops: aber es funktioniert soweit.

Code: Alles auswählen

Sub text_imp_Test
Dim myValue as integer
Dim Daten as Variant
		datei = Freefile
		open "C:\RG_Nummer.txt" for InPut as datei
		
		For i = 0 to 0
		
		Input #datei, Currentele
		If Currentele <> "" then
			daten() = split(Currentele,chr(9),7)
			For j= 0 to 0
	 		myValue = daten(j)
			
			ThisComponent.Sheets.getbyname("Tabelle1").getCellByPosition(9,24).Value = myValue
			next j
			
		End If
		next i
		close #datei
		
		Pluseins
		
		end sub


Sub Pluseins
oSheet = ThisComponent.sheets.getbyname("Tabelle1")'Zugriff auf Tabelle1
ocell = osheet.getcellrangebyname("J25") 'oder .getcellbyposition(2,4) -> Zugriff auc C5
ocell.value = ocell.value +1 'hochzählen

txt_expo

End Sub


Sub txt_expo
	objDatei = ThisComponent
	objBlatt = objDatei.Sheets().getbyname("Tabelle1")
	objZelle = objBlatt.getCellRangebyName("J25")
	objCursor = objBlatt.createCursorByRange(objZelle)	
	objCursor.gotoEnd()
	
	maxline = objCursor.getrangeaddress().endrow
	maxspa = objCursor.getrangeaddress().endrow
		 
   	datei = Freefile
   	open ConvertToURL("C:\RG_Nummer.txt") for OutPut as datei
   	For i = 24 to 24
   		inhalt = ""
   		For j = 9 to 9
  	If objBlatt.getcellbyposition(j,i).String <> "" then
   		arg = objBlatt.getcellbyposition(j,i).String
   			inhalt = inhalt + arg & chr(9)
   			End If
   		next j
    	Print #datei, inhalt
   	Next i
   
   	close #datei
end sub

An alle, die das LibreOffice-Forum nutzen:


Bitte beteiligen Sie sich mit 7 Euro pro Monat und helfen uns bei unserem Budget für das Jahr 2024.
Einfach per Kreditkarte oder PayPal.
Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet.

❤️ Vielen lieben Dank für Ihre Unterstützung ❤️

Antworten