Seite 1 von 1

[GELÖST] Wert aus Calc-Zelle in Dialog-Feld anzeigen

Verfasst: Mi 21. Feb 2024, 11:54
von rmb
Windows 10 Home
LO 7.6.4.1 (x86_64)[attachment=0]Greenshot_2024-02-21 11_28_03.jpg[/attachment]

Guten Tag
ich habe ein kleines Problem in der Dialog-Programmierung. Ich habe einen funktionierenden Dialog zusammen gezimmert, habe aber an einer Stelle ein Problem mit dem ich trotz stundenlangem Probieren und Googeln nicht weiterkomme.

Da ich in einem sehr fortgeschrittenen Alter bin, möchte ich meine Restlaufzeit für andere Dinge als für Makroprogrammierung verwenden. Ich habe auch noch nie einen Beitrag in ein Forum gestellt. Ich hoffe auf Verständnis.


Das Dialog-Makro: in Calc öffnet sich durch Drücken von Alt+3 der Dialog. Durch die Eingabe eines Betrages und anschliessendem OK, wird dieser Betrag zum Wert der aktiven Zelle addiert.

Das Problem: ich bekomme es einfach nicht hin in der Dialog-Maske den aktuellen Zellwert (vor der Addition) angezeigt zu bekommen (Feld "Aktueller_Wert").

Wäre jemand so nett und würde einem alten Mann aufs Pferd helfen? Vielen Dank! Ich trinke auch ein Gläschen Rotwein auf den / die Helfer ;-)
******************************************+Makro-Cade ***************************************
Sub OpenPlusFunc
' eigenes Makro
dim calcDoc as object, sheetegMyValue as double
dim oMyCell as variant
dim oMyCellValue as double

calcDoc = ThisComponent
sheet = calcDoc.currentController.ActiveSheet
oMyCell = calcDoc.CurrentSelection

oMyCellValue = oMyCell.getValue()
DialogLibraries.LoadLibrary("Standard")
' Dialog aufrufen
dlgGetValue = createUnoDialog(DialogLibraries.GetByName("Standard").getByName("DlgGetValue"))

if dlgGetValue.execute then
' eingegebenen Betrag als Zahl einlesen
lgMyValue = dlgGetValue.getControl("Betrag").value

if lgMyValue <> 0 then
oMyCell.setValue(oMyCellValue + lgMyValue)
end if
else 'Schaltfläche "Abbrechen" betätigt
exit sub
end if
End Sub ' OpenPlusFunc

Re: Wert aus Calc-Zelle in Dialog-Feld anzeigen

Verfasst: Mi 21. Feb 2024, 21:25
von mikele
Hallo,
nach der Zeile

Code: Alles auswählen

dlgGetValue = createUnoDialog(DialogLibraries.GetByName("Standard").getByName("DlgGetValue"))
solltest du folgende Zeile einfügen

Code: Alles auswählen

dlgGetValue.getControl("Aktueller_Wert").Value=oMyCell.Value
Prost

Re: Wert aus Calc-Zelle in Dialog-Feld anzeigen

Verfasst: Fr 23. Feb 2024, 20:01
von rmb
Hallo,

erst einmal sorry, dass ich erst heute antworte. Ich hatte beim Registrieren zwar angegeben, dass ich per Email informiert werde, wenn eine Antweort auf meinen Beitrag erfolgt, aber - Anfänger! - irgendwie funktioniert das nicht.

Danke ein herzliches Dankeschön - dein Tipp funktioniert auf Anhieb!

Zu meiner Ehrenrettung muss ich sagen, dass ich sooo dicht ][ dran war. Nur hat halt das entscheidende Stückchen gefehlt.

Nochmal danke und bye. Jetzt muss ich nur noch herausfinden, wie ich den Request als "gelöst" schliesse.

Re: Wert aus Calc-Zelle in Dialog-Feld anzeigen

Verfasst: Fr 23. Feb 2024, 21:47
von mikele
Jetzt muss ich nur noch herausfinden, wie ich den Request als "gelöst" schliesse.
Hierzu kann der Threadstarter, wenn seine Frage im Thread beantwortet werden konnte, nachträglich im Eröffnungspost des Threads die Kennzeichnung "[GELÖST]" ergänzen ...

Re: [GELÖST] Wert aus Calc-Zelle in Dialog-Feld anzeigen

Verfasst: So 23. Feb 2025, 10:44
von Thomas-Warncke
Bin auch nach der Suche nach dieser Lösung. Git es vielleicht eine Beispiel-Tabelle. Habe selber Probleme mit dem Einbau des Macro. Danke.