❤️ Helfen Sie noch heute, unser LibreOffice Forum zu erhalten! ❤️
Unterstützen Sie das LibreOffice-Forum und helfen Sie uns, unser Ziel für 2025 zu erreichen!

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱


❤️ DANKE >> << DANKE ❤️

>> Dank Ihrer Unterstützung -> Keine Werbung für alle registrierten LibreOffice-Forum User! <<
🤗 Als Dankeschön werden Sie im Forum als LO-SUPPORTER gekennzeichnet. 🤗

BASIC Laufzeit Fehler - Variable nicht belegt - (ab und zu)

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
hchaieb
Beiträge: 4
Registriert: So 30. Okt 2016, 11:46

BASIC Laufzeit Fehler - Variable nicht belegt - (ab und zu)

Beitrag von hchaieb » So 30. Okt 2016, 12:04

Libre Office 5.2.2.2
Makro in Basic

Code: Alles auswählen

public function Hintergrund_Aehnlich(RRef as Range,RT as Range) as integer
	dim c1 as long
	dim c2 as long
	
	Hintergrund_Aehnlich=0
	
	c1=RRef.CellRange.CellBackColor
	c2=RT.CellRange.CellBackColor
	
	if c1=c2 then Hintergrund_Aehnlich=1

end function
Beim Öffnen von Calc meldet LibreOffice Calc Laufzeit Fehler Variable nicht belegt für die Zeile:

Code: Alles auswählen

dim c1 as long
Ich verwende die Funktion 365 mal. Ich klicke die Fehlermeldung 365 mal weg. Dann lösche ich das "e" von Range in

Code: Alles auswählen

public function Hintergrund_Aehnlich(RRef as Range
und schreibe die "e" wieder rein
Starte die Berechnung manuell und die Funktion arbeitet einwandfrei
Kennt jemanden eine Lösung für dieses Verhalten? was mache ich falsch?

Benutzeravatar
karolus
* LO-Experte *
Beiträge: 2580
Registriert: Fr 10. Dez 2010, 10:01

Re: BASIC Laufzeit Fehler - Variable nicht belegt - (ab und zu)

Beitrag von karolus » So 30. Okt 2016, 14:20

Hallo

Basic kennt kein `Range` -objekt, damit der Käse überhaupt funktioniert brauchts wohl im Modul eine erste Zeile:

Code: Alles auswählen

Option VBASupport 1
und zusammengefasst:

Code: Alles auswählen

Option VBASupport 1

public function Hintergrund_Aehnlich(RRef as Range,RT as Range) as integer
   dim c1 as long
   dim c2 as long
   c1=RRef.CellRange.CellBackColor
   c2=RT.CellRange.CellBackColor
   Hintergrund_Aehnlich = IIF(c1=c2,1,0)

end function
LO25.2.x.y debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)

hchaieb
Beiträge: 4
Registriert: So 30. Okt 2016, 11:46

Re: BASIC Laufzeit Fehler - Variable nicht belegt - (ab und zu)

Beitrag von hchaieb » So 30. Okt 2016, 15:10

Vielen Dank Karolus, deine Lösung hat mein Problem gelöst.
Ich kannte die "Option VBASupport 1" nicht.

eine Frage habe ich noch:
Was wäre die alternative mit Libre Office Objekte gewesen. Ich habe "Range" durch "Variant" und ohne Objektbezeichnung ausprobiert gehabt. Trotzdem ging nichts.

Besten Dank

Benutzeravatar
karolus
* LO-Experte *
Beiträge: 2580
Registriert: Fr 10. Dez 2010, 10:01

Re: BASIC Laufzeit Fehler - Variable nicht belegt - (ab und zu)

Beitrag von karolus » So 30. Okt 2016, 15:50

Hallo

Es gibt keine Alternative in Basic, mit dem Aufruf aus Calc =meineFunktion(A1) ohne Anführungszeichen um A1 übergibst du Basic nur den Wert|Text aus der Zelle A1, nicht aber das vollständige Objekt mit allen Attributen wie u.a. .CellBackColor

Wenn du das vollständige Objekt auswerten möchtest, musst du bspw. den Namen der Zelle als Text übergeben:
=meineFunktion("A1")
und dich in Basic durchhangeln zum Zellobject via …sheet.getCellRangeByName( arg )
Ich kannte die "Option VBASupport 1" nicht.
Dann verstehe ich aber nicht wie du vorher angeblich sinnvolle Ergebnisse bekamst.

Ach ja, die echte Alternative ist dann ein richtige CalcAddInn in einer vernünftigen Programmiersprache
http://www.openoffice.org/api/docs/comm ... AddIn.html
http://www.biochemfusion.com/doc/Calc_addin_howto.html
https://forum.openoffice.org/en/forum/v ... 21&t=56916
http://de.openoffice.info/viewtopic.php?f=25&t=60394
LO25.2.x.y debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)

hchaieb
Beiträge: 4
Registriert: So 30. Okt 2016, 11:46

Re: BASIC Laufzeit Fehler - Variable nicht belegt - (ab und zu)

Beitrag von hchaieb » So 30. Okt 2016, 17:48

Danke! hervorragend erklärt
karolus hat geschrieben: Dann verstehe ich aber nicht wie du vorher angeblich sinnvolle Ergebnisse bekamst.
Beim Öffnen der Datei hatte ich nur Fehlermeldung. Die Funktion wurde deaktiviert. Jedoch nach dem neu berechnen der mit str+shift+F9 die Function hat das gewünschte ergebnis geliefert gehabt. Weshalb bleibt mir ebenfals ein Rätsel

Viele Grüße

Benutzeravatar
karolus
* LO-Experte *
Beiträge: 2580
Registriert: Fr 10. Dez 2010, 10:01

Re: BASIC Laufzeit Fehler - Variable nicht belegt - (ab und zu)

Beitrag von karolus » So 30. Okt 2016, 18:09

Hallo

Bei meinen Versuchen gabs nach dem wegdrücken der Fehlermeldungen und Neuberechnung nur falsche 0en als Ergebnis.
LO25.2.x.y debian 13(trixie) auf Raspberry5 8GB (64bit)
LO25.8.x.y flatpak debian 13(trixie) auf Raspberry5 8GB (64bit)


An alle, die das LibreOffice-Forum gern nutzen und unterstützen wollen:


Bitte helfen Sie uns mit 7 Euro pro Monat.
Durch Ihren Beitrag tragen Sie dazu bei, unsere laufenden Kosten für die kommenden Monate zu decken.
Unkompliziert per Kreditkarte oder PayPal.
Als ein kleines Dankeschön werden Sie im LO-Forum als SUPPORTER gekennzeichnet.



Antworten