XL 2013 adapter un " PRIVATE SUB " en " PUBLIC SUB" ( problème avec ME.OLEObjects)

MM3133

XLDnaute Nouveau
Bonjour à tous,

Je cherche à adapter le code ci dessous pour pouvoir l'appeler à l'ouverture de mon classeur, mais je bloque un peu là...

Code:
Private Sub Textbox_nul()
    Dim oObjet As Object

    ' Boucle sur tous les objects
    For Each oObjet In Me.OLEObjects
        ' TextBox
        If TypeOf oObjet.Object Is MSForms.TextBox Then
            oObjet.Object.Text = ""
End If
Next oObjet

End Sub


Le "ME" représente quoi exactement ?
De plus, il faudrait qu'il puisse parcourir toutes les feuilles de mon classeur...
Quelqu'un aurait une idée ? (Je suis sur Excel 2013)

Merci beaucoup,

MM3133
 

Caillou

XLDnaute Impliqué
Re : adapter un " PRIVATE SUB " en " PUBLIC SUB" ( problème avec ME.OLEObjects)

Bonjour,

Le Me représente le nom du UserForm lorsqu'il est utilisé sur le module de ce UserForm.
Pour l'utiliser ailleurs, il suffit de remplacer Me par le nom du UserForm

Caillou
 

Dranreb

XLDnaute Barbatruc
Re : adapter un " PRIVATE SUB " en " PUBLIC SUB" ( problème avec ME.OLEObjects)

Bonjour.

Le Me représente toujours l'exemplaire d'objet auquel le code est attaché (c'est à son type que le code est attaché et aux procédures Public du type qu'il se réfère, mais c'est aussi aux données Public de l'exemplaire qu'il se réfère). Exemplaire: = Instance in dze désespéranto langouèdge)

Si ça doit être écrit dans le module ThisWorkbook, OLEObjects étant une collection de l'objet WorkSheet et non Workbook, vous devez faire l'opération dans une For Each Feuille in Me.Worksheets, Feuille étant déclaré As Worksheet, et faire For Each oObjet In Feuille.OLEObjects.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 495
Messages
2 088 966
Membres
103 993
dernier inscrit
Essens