ich möchte beim anklicken einer Zelle ein Makro ausführen.
Das habe ich versucht über einen Listener zu realisieren.
Das funktioniert, aber nicht so wie erwartet...
Sobald ich nun in eine Zelle klicke, die sich im Bereich der Spalte M15... befindet, wird der Print-Dialog angezeigt.
Das ist soweit richtig.
Wenn ich nun den Print-Dialog mit OK verlasse, "hängt" die Selektion an den Maus.
So, als würde ich mit gedrückter linker Maustaste die Maus bewegen.
Hat jemand eine Idee, woran das liegt und wie ich dieses Verhalten unterdrücken kann?
Gruß
rav
Hier der Code:
Code: Alles auswählen
Global oListener, oController, oSheet, bomSheet, oRow, oColumn
Dim dlg, dlgBeschreibung As object
Sub AddListener()
oListener = CreateUnoListener("CurCtrl_", "com.sun.star.view.XSelectionChangeListener")
ThisComponent.CurrentController.addSelectionChangeListener (oListener)
End Sub
Sub RemoveListener()
On Error Resume Next
ThisComponent.CurrentController.removeSelectionChangeListener (oListener)
End Sub
Sub CurCtrl_selectionChanged(oEvent)
oDoc = ThisComponent
oController = oDoc.CurrentController
oSheet = oController.activesheet
oZelle = oDoc.getCurrentSelection()
bCheckzelle = HasUnoInterfaces( oZelle, "com.sun.star.table.XCell" )
if bCheckzelle then ' eine einzelne Zelle wurde selektiert
oCelle = oDoc.getCurrentSelection().getCellAddress()
oRow = oCelle.Row
oColumn = oCelle.column
If oColumn = 12 And oRow >= 14 Then 'Spalte M, ab Zeile 15
print "OK"
end if
end if
End Sub
Moderation,4: CODE tags gesetzt