Bonjour,
La même macro, mais qui fonctione ;-)))
Attention, je crois que ton problème se situe au niveau des
"Bibliothèques et Modules" : un classeur contient des bibliothèques
(library), qui elles mêmes contiennent des modules VB, qui contiennent
des macros.
Dans ton code, il est indiqué qu'il y a une bibliothèque "Standard" et
une bibliothèque "Dialogue". Cette bibliothèque "dialogue" contiend un
module (onglet) boite de dialogue nomé "Dialogue1"
Dans mon 2ème code, je suppose (ce qui est je crois le cas le plus
fréquent, et - il me semble - le plus pratique) que le module de code et
le module de boite de dialogue sont dans la même bibliothèque "Standard".
Bon courage,
Jean-Claude
sub essaie
Dim MonDocument As Object, LesFeuilles As Object, UneFeuille As Object,
MaCellule As Object
Dim oBoiteDialogue As Object,ExitOk AS integer
Dim ChampDirection AS Object
Dim Direction As String
monDocument = thisComponent
LesFeuilles = MonDocument.Sheets
UneFeuille = LesFeuilles.getByName("Feuille1")
MonDocument.currentController.activeSheet = uneFeuille
exitOK = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
DialogLibraries.LoadLibrary("Dialogue")
oBoiteDialogue = CreateUnoDialog( DialogLibraries.Dialogue.Dialog1)
oBoiteDialogue.Model.TextField1.Text = "Toto"
if oBoiteDialogue.Execute = exitOK then
' récupération des données
ChampDirection=oBoiteDialogue.GetControl("TextField1")
Direction=ChampDirection.Text
MaCellule=UneFeuille.getCellRangeByName("A1")
MaCellule.string = (direction)
end if
End Sub
Code en mettant les 2 modules (code et Boite de dialogue dans la même
bibliothèque)
sub essaie
Dim MonDocument As Object, LesFeuilles As Object, UneFeuille As Object,
MaCellule As Object
Dim oBoiteDialogue As Object,ExitOk AS integer
Dim ChampDirection AS Object
Dim Direction As String
monDocument = thisComponent
LesFeuilles = MonDocument.Sheets
UneFeuille = LesFeuilles.getByName("Feuille1")
MonDocument.currentController.activeSheet = uneFeuille
exitOK = com.sun.star.ui.dialogs.ExecutableDialogResults.OK
oBoiteDialogue = CreateUnoDialog( DialogLibraries.Standard.Dialogue)
oBoiteDialogue.Model.TextField1.Text = "Toto"
if oBoiteDialogue.Execute = exitOK then
' récupération des données
ChampDirection=oBoiteDialogue.GetControl("TextField1")
Direction=ChampDirection.Text
MaCellule=UneFeuille.getCellRangeByName("A1")
MaCellule.string = (direction)
end if
End Sub
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]