Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Bonjour,
Est-il possible via une macro de supprimer l'ensemble des champs via une macro VB ?
J'ai utilisé le script suivant :
SUB ResetInputField
set obj = ActiveDocument.GetSheetObject("MB06")
for i =0 to 1000
obj.RemoveField i
next
END SUB
Mon souci c'est fixer le max de i. je n'arrive pas à récupérer la numéro de la dernière ligne remplie dans la multibox.
Auriez-vous des idées ?
merci
tu veux supprimer l'objet lui même ou bien les champs de l'objet ?
Je voudrais supprimer les champs de l'objet.
La macro que j'ai écrit :
SUB ResetInputField
set obj = ActiveDocument.GetSheetObject("MB06")
for i =0 to 1000
obj.RemoveField i
next
END SUB
supprime les champs mais pas tous. Il faut appuyer plusieurs fois sur le bouton pour effacer entièrement les champs de l'objet.
En fait dans la boucle, je ne sais pas quelle valeur fixer pour la valeur maximale du i.
Bonjour, (l'explication est dans le commentaire du code)
SUB ResetInputField
set mb = ActiveDocument.GetSheetObject("MB06")
' Récupere le nombre de ligne dans la multibox
' Si l'objet était un tablebox il faudra utiliser GetColumnCount
nbRows = mb.GetRowCount
for i = 0 to nbRows
'pour effacer toutes les lignes d'un seul coup il faut
'commencer par supprimer la ligne avec la plus grande valeur et ainsi de suite
mb.RemoveField nbRows-1
' Re-value le nombre de ligne dans la multibox
nbRows = mb.GetRowCount
next
END SUB
Bonjour Sabrina,
Est-ce que l'option suivante pourrait répondre à vos besoins?
SUB ResetInputField
set obj = ActiveDocument.GetSheetObject("MB06")
obj.ResetInputFieldValues 0
END SUB
Cordialement,
Philippe