🙏 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. 🤗

Zeile eines geklickten Buttons ermitteln

CALC ist die Tabellenkalkulation, die Sie immer wollten.
Antworten
Benutzeravatar
conny64
Beiträge: 14
Registriert: Fr 21. Mär 2014, 14:16

Zeile eines geklickten Buttons ermitteln

Beitrag von conny64 » Di 26. Dez 2023, 21:28

ich habe in jeder zeile einen Button welcher eine Url mit einem Parameter aufrufen soll.
Der Parameter steht in der selben Zeile wie der Button.
Irgendwie schaffe ich es nicht die aktuelle Zeile des geklickten Buttons zu ermitteln

Code: Alles auswählen


Sub OpenURLWithParameter
    Dim oSheet As Object
    Dim oCell As Object
    Dim sBaseURL As String
    Dim sParameter As String
    Dim sFinalURL As String
    Dim oShell As Object
    Dim nRow As Integer ' Die Zeilennummer der aktuellen Zelle
    
    oSheet = ThisComponent.CurrentController.ActiveSheet
    
    ' Die Zeilennummer der aktuellen Zelle
    oCell = ThisComponent.CurrentSelection
    nRow = oCell.RangeAddress.StartRow
    
    ' Die Basis-URL, die aufgerufen werden soll
    sBaseURL = "https://www.xxx.com/map/index.php?" ' Beispiel: Basis-URL
    
    ' Den Parameter aus der Zelle in der nächsten Zeile holen
    oCell = oSheet.getCellByPosition(0, nRow) 
    
    ' Überprüfen, ob die Zelle nicht leer ist, bevor der Parameter geholt wird
    If oCell.getString() <> "" Then
       
        ' Die endgültige URL mit dem Parameter zusammenstellen
        sFinalURL = sBaseURL & "param=" & sParameter ' Beispiel: "https://www.example.com/page?param=WertAusZelle"
        
        ' URL aufrufen
        oShell = CreateUnoService("com.sun.star.system.SystemShellExecute")
        oShell.execute(sFinalURL, "", 0)
    Else
        MsgBox "Die Zelle ist leer."
    End If
End Sub

mikele
* LO-Experte *
Beiträge: 1932
Registriert: Mo 1. Aug 2011, 20:51

Re: Zeile eines geklickten Buttons ermitteln

Beitrag von mikele » Mi 27. Dez 2023, 05:20

Hallo,
es wäre einfacher, wenn du anstelle der Button die Funktion HYPERLINK() nehmen würdest, z. B. in B2

Code: Alles auswählen

=HYPERLINK("https://www.example.com/page?param=" & A2;"Hier klicken")
Gruß,
mikele

Benutzeravatar
conny64
Beiträge: 14
Registriert: Fr 21. Mär 2014, 14:16

Re: Zeile eines geklickten Buttons ermitteln

Beitrag von conny64 » Mi 27. Dez 2023, 18:44

Hallo Mikele,

ich habe es damit erst mal verwirklicht. Danke !!!
Allerdings ist es nicht ganz so User freundlich, da wenn in den Sicherheitseinstellungen der Schalter nicht
rausgenommen wird man immer mit CTRL+ENTER dieses aktivieren muss

Wenn du Lust hast, kannst du dir das fertige Script mal anschauen:
https://www.dl2fbo.de/map/download/AFU-Logbuch_0.2.ods


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