🙏 Helfen Sie jetzt mit, unser LibreOffice Forum zu erhalten! 🙏
Mit Ihrer Spende sichern Sie den Fortbestand, den Ausbau und die laufenden Kosten dieses Forums. 🌱

🍀 Jeder Beitrag zählt – vielen Dank für Ihre Unterstützung!🍀

❤️ 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. 🤗

Formel aus Makro in Zelle verwenden

Alles zur Programmierung im LibreOffice.
Antworten
DAP
Beiträge: 41
Registriert: Mo 20. Feb 2012, 20:40

Formel aus Makro in Zelle verwenden

Beitrag von DAP » Di 21. Feb 2012, 12:07

Hallo,

ich möchte gerne Funktionen, die als Makro definiert sind, zur Berechnung einer Zelle verwenden.

Hier eine Beispielfunktion:

Code: Alles auswählen


Function Berechnung(Wert1, Anzahl)

  Wert2 = Wert1

  For I = 1 to AnzahlP
    Wert2 = Wert2 +1
  End If
  
  Berechnung = Wert2

End Function



Hier die Eingaben im Tabellenblatt:

die Zelle B1 hat den Wert 1
die Zelle C1 hat den Wert 5
gebe ich jetzt z.B. in die Zelle A1 die Formel =Berechnung(B1;C1) ein, erhalte ich den Fehlerwert: #Wert!

Ich hoffe, ihr könnt mir weiter helfen.

Gruß DAP

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

Re: Formel aus Makro in Zelle verwenden

Beitrag von karolus » Di 21. Feb 2012, 12:46

Hallo

Nimm in der Tabelle

Code: Alles auswählen

=B1+C1
Karo
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)

DAP
Beiträge: 41
Registriert: Mo 20. Feb 2012, 20:40

Re: Formel aus Makro in Zelle verwenden

Beitrag von DAP » Di 21. Feb 2012, 12:54

Hallo Karo,

ich habe schon sehr viele Funktionen, die als Makrocode vorliegen und ich möchte gern darauf zurückgreifen.
Der Code oben war nur als Beispiel gedacht. Ich würde gern wissen, wie man grundsätzlich Funktionen aus
Makros in Tabellenblättern verwenden kann.

Gruß DAP

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

Re: Formel aus Makro in Zelle verwenden

Beitrag von karolus » Di 21. Feb 2012, 13:07

Hallo

Der Code oben ist falsch und wird dir ein paar Basicfehlermeldungen um die Ohren werfen, wenn du die Funktion benutzt.



Grundsätzlich musst du selbstgestrickte Funktionen für den Aufruf aus Calc heraus in der Standardbibliothek (unterhalb →Meine Makros) oder der Standardbibliothek eines Dokuments speichern.

Ps. Wenn du schon sehr viele Funktionen hast, ist mir unklar wieso du erst jetzt auf Die Frage nach dem Speicheort kommst?
Karo
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)

balu
* LO-Experte *
Beiträge: 370
Registriert: Mi 1. Jun 2011, 16:21

Re: Formel aus Makro in Zelle verwenden

Beitrag von balu » Di 21. Feb 2012, 13:43

Hallo

@Karo
nicht wundern, sondern einfach mal hier nachlesen: Calc Zellen berechnen mit VBA Formel.


@DAP
Was hast Du an meinen Worten aus den eben verlinkten Thread nicht verstanden?
balu hat geschrieben: Das lässt den Schluß zu, das Du glaubst das LO die Excel-Makros zu 100% umsetzen kann. Dem ist nicht so, dazu sind die Dialekte der beiden zu unterschiedlich. Und wenn Du nicht Zweigleisig (Excel <-> LO) fahren musst, dann empfehle ich dir dringends deine Makros für LO neu zu schreiben.
balu hat geschrieben: Ich vermute sehr stark das dein Makro NICHT in LO funktionieren wird, weil LO damit nichts anfangen kann.
Es gibt keine Pauschale Lösung, sondern nur individuell angepasste Vorschläge. Am besten Du schaust erst mal bei Dannenhöfer rein, um wenigstens ein bischen Grundwissen zu erlangen.
Was sind Prozeduren und Funktionen?
Dort kannst Du natürlich auch noch anderes zu dem Thema finden, musst dort nur nach "Function" suchen. Und wenn Du dann spezielle Probleme hast, melde dich wieder.



Gruß
balu

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

Re: Formel aus Makro in Zelle verwenden

Beitrag von karolus » Di 21. Feb 2012, 13:57

Hallo
@Balu
Ah - alles klar wieder mal einer der schrottreifen VBAcode in LO/OOocalc nutzen will

Gruß Karo
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)

DAP
Beiträge: 41
Registriert: Mo 20. Feb 2012, 20:40

[gelöst] Re: Formel aus Makro in Zelle verwenden

Beitrag von DAP » Di 21. Feb 2012, 16:19

Hallo,

vielen Dank für die kleinen Bemerkungen am Rande @karo und @balu.

Der Beispielcode den ich oben schnell eingetippt habe war fehlerhaft, er sollte eigentlich nur veranschaulichen,
wozu ich die Funktion als Makro brauchte und nicht einfach die Formel direkt in die Zelle schreiben möchte.

Den Fehler warum bei mir keine Ergebnisse angezeigt wurden, hab ich gefunden. Nach dem importieren einer
Excel Datei mit Makro code und dem anschließenden abspeichern als *.ods liefen die Functionen noch nicht.

Erst nach dem Schließen und nochmaligen Öffnen der Datei wurden die Formeln berechnet und angezeigt.

hier noch der vollständigkeitshalber der überarbeitete obige Beispielcode für alle die es interessiert:

Code: Alles auswählen

Function Berechnung(Wert1 as Double, Anzahl as Integer) as Double
Dim Wert2 as Double
Dim I as Integer

  Wert2 = Wert1

  For I = 1 to Anzahl
    Wert2 = Wert2 + 1
  Next
 
  Berechnung = Wert2

End Function
Gruß DAP
Zuletzt geändert von DAP am Di 21. Feb 2012, 16:29, insgesamt 1-mal geändert.

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

Re: Formel aus Makro in Zelle verwenden

Beitrag von karolus » Di 21. Feb 2012, 16:29

DAP hat geschrieben:...
hier noch der vollständigkeitshalber der überarbeitete obige Beispielcode für alle die es interessiert:

Code: Alles auswählen

Function Berechnung(Wert1 as Double, Anzahl as Integer) as Double
Dim Wert2 as Double
Dim I as Integer

  Wert2 = Wert1

  For I = 1 to Anzahl
    Wert2 = Wert2 + 1
  Next
 
  Berechnung = Wert2

End Function
Gruß DAP
Genial , Einfach genial :mrgreen:

Code: Alles auswählen

function Berechnung( x, y )
Berechnung = x + y
end function
Karo
LO7.4.7.5 debian 12(bookworm) auf Raspberry4b 8GB (64bit)
LO24.8.0.3 flatpak debian 12(bookworm) auf Raspberry4b 8GB (64bit)

DAP
Beiträge: 41
Registriert: Mo 20. Feb 2012, 20:40

Re: Formel aus Makro in Zelle verwenden

Beitrag von DAP » Di 21. Feb 2012, 16:35

Hallo Karo,

wenn du schon nochmal nachtreten möchtest, dann hättest du feststellen müssen, das
bei Dir nicht das gleiche Ergebnis herauskommen würde (wenn man die 1 gegen eine andere
Variable austauschen würde).

Nochmal, es ging mir nicht um den Basic-Code, der war nur ein vereinfachtest Beispiel,
die Formel wurde schlicht und einfach im Tabellenblatt nicht berechnet.

Gruß DAP


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