contenu de textfield vers une cellule
Bonsoir,
Tout d'abord je tenais à vous remercier pour ce que vous faites. Je ne suis pas un professionnel, mais j'aime le code est ce que ca ouvre comme perspectives :D
J'ai quelques notions de C et de python. Je fais pas mal de choses sur tableur (excel et libreoffice). Je travaille de plus en plus sur libreoffice pour différentes raisons, mais j'avoue que pour la programmation, c'est plus long à prendre le pli que pour msoffice.
Bref, le problème qui m'amène ici aujourd'hui, concerne la recuperation de données dans un formulaire afin d'alimenter une feuille de calcul. Très basique me direz-vous, mais apres avoir cherché 3 jours, je n'ai pas trouvé de réponse à mon problème. Que voici.
Voici le bout de code qui me turlupine :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
Dim oDoc As Object, oSh As Object
Sub remplissage
Dim oCurseur As Object, Dlg As Object
Dim oText As String
Dim DerLig As Long
DialogLibraries.LoadLibrary("biblio")
Dlg = CreateUnoDialog(DialogLibraries.biblio.Dialog1)
oDoc = ThisComponent
oSh = oDoc.Sheets.getByName("Données")
oCurseur = oSh.createCursor
oCurseur.GoToEndOfUsedArea(True)
DerLig = oCurseur.rangeAddress.endRow+1
REM oSh.getCellByPosition(0, DerLig).setString("essai")
oText = Dlg.getControl("TextField1").Text
oSh.getCellByPosition(3,DerLig).String = oText
End Sub |
ce sont les deux dernières lignes qui me pose problème, ça ne fonctionne pas :
- quand je passe par une msgbox pour tester (msgbox(oText)), elle est vide
- quand je mets un texte par defaut directement dans le controle textfield1, ca marche mais ca renvoie le texte par defaut
- quand je remplace par la ligne en commentaire (REM ci dessus) ca fonctionne
Je ne comprends pas pourquoi ca ne recupère pas ce qui est saisi dans le textfield, pas de message d'erreur, il ne reconnait simplement pas ce qui est saisi je pense.
Pour info, cette routine est rattachée au bouton valider du formulaire dans executer l'action
Si qq'un peut m'aider ca me rendra moins chèvre ...
Par avance merci,