Brauche BUTTON der mir Wert einer Zelle um 1 erhöht, wie?

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Brauche BUTTON der mir Wert einer Zelle um 1 erhöht, wie?

Beitrag von Oblitor »

Hallo Zusammen,

nachdem hier ja einige Vollprofis unterwegs sind ist das für Euch sicher kein Problem.
Ich bin dabei ein Rechnungsprogramm mit Calc zu realisieren, Kundendaten (auf Blatt2) über Verweis Funktion funktioniert schon alles, was ich jetz bräuchte wäre ein Button (nicht auf Ausdruck sichtbar), der mir die Rechnungsnummer um 1 erhöht.
Ausserdem ein Pulldown, das mir den Mehrwertsteuersatz von 7 bzw 16 in die Nr. integriert.
System der Rechnungsnummer wie folgt:
165001 (MwSt zweistellig, 5 = 2005, 3stellige eigentliche Nummer)
075002

Wie mach ich das :?:
Danke für die Hilfe schonmal

Oblitor

PS: Kann ich die Kundendaten auch in eine Extra .ods Datei speichern und die zuküftig auch mit anderen .ods-Programmen nutzen?
Eddy
********
Beiträge: 2781
Registriert: So, 02.10.2005 10:14

Beitrag von Eddy »

Hallo Oblitor,

erstmal zu Deinem PS. Ja, Du kannst.

Bei Deiner Frage kann ich Dir im Moment nicht helfen.
An Deiner Stelle würde ich einmal überlegen, ob es nicht schneller geht, die Rechnungsnummer von Hand einzutragen. So, wie Du es beschrieben hast - einmal Klick und dann noch MwSt. aussuchen - scheint es mir umständlicher zu sein.

Mit rechnungsnummernden Grüßen

Eddy
Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Beitrag von Oblitor »

Also Pull-Down mit Werten 16 und 7 hab ich, komischerweise wird das als Text der Zelle zugewiesen.

Folgende Lösung umgeht dieses Problem:
=(T(G13)*10000)+TEIL(JAHR(H16);4;1)*1000+0

[ G13 ist Feld mit MwSt. Pulldown 7 oder 16;
H16 manuelle Eingabe Rechnungsdatum, davon Jahr = 2005, Teilwert ab 4tem Zeichen mit einem Zeichen Länge -> 5 ]

ergibt Rechnungsnummern 165000 und 75000.

Nur wie erhöhen per Button?
Mit Macro String auslesen und den Teil nachm zweiten "+" um eins erhöhen, keine Ahnung wie ich sowas programmier...

Greez
Oblitor
Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Beitrag von Oblitor »

Oblitor hat geschrieben:Nur wie erhöhen per Button?
Mit Macro String auslesen und den Teil nachm zweiten "+" um eins erhöhen, keine Ahnung wie ich sowas programmier...
Da Rechnungsnummern auch manuell geändert werden, wäre das Setzen des Namen ReNr mit zugewiesener Zelle das Beste und diese per Makro zu verändern. Soll ja auch einfach geändert werden können für weniger versierte Benutzer.

Also =(T(G13)*10000)+TEIL(JAHR(H16);4;1)*1000+ReNr

Bitte um Hilfe fürs Makro...

Danke
Oblitor
Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Beitrag von Oblitor »

sub ReNr
rem ----------------------------------------------------------------------
rem define variables
dim document as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")

rem ----------------------------------------------------------------------
rem - Sprung auf H15 - Inhalt der Zelle =G15+1

dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "ToPoint"
args1(0).Value = "$H$15"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args1())

rem ----------------------------------------------------------------------
rem - Kopieren von H15 -
dispatcher.executeDispatch(document, ".uno:Copy", "", 0, Array())

rem ----------------------------------------------------------------------
rem - Sprung auf G15, Inhalt ist einfache Zahl -

dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "ToPoint"
args3(0).Value = "$G$15"

dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args3())

rem ----------------------------------------------------------------------
rem - Einfügen nur des Zahlenwertes von G15 in H15, dadurch erhöht sich G15 um 1 -
dim args4(5) as new com.sun.star.beans.PropertyValue
args4(0).Name = "Flags"
args4(0).Value = "V"
args4(1).Name = "FormulaCommand"
args4(1).Value = 0
args4(2).Name = "SkipEmptyCells"
args4(2).Value = false
args4(3).Name = "Transpose"
args4(3).Value = false
args4(4).Name = "AsLink"
args4(4).Value = false
args4(5).Name = "MoveMode"
args4(5).Value = 4

dispatcher.executeDispatch(document, ".uno:InsertContents", "", 0, args4())


end sub
Das wär das Makro, nur funktionierts nicht bei Aufruf über Button, nur über Makro ausführen, ich werd mal schaun woran jetz das hängt....

Grüße
Oblitor

PS: Wenn ma mit sowas mal anfängt.... *seufz*
Oblitor
**
Beiträge: 22
Registriert: Fr, 21.10.2005 18:37

Beitrag von Oblitor »

Oblitor hat geschrieben:Das wär das Makro, nur funktionierts nicht bei Aufruf über Button, nur über Makro ausführen, ich werd mal schaun woran jetz das hängt....
kaum geschrieben, schon funktionierts *lol*
OO Calc Programmierung schreckt ab, ausser man ist hartnäckig ;)
Antworten