Manipulation des frames d'un userform

Bonjour

A travers un userform appelé USFMAJ, je souhaite mettre à jour des données en effaçant le contenu des cellules spécifiques. Juste avant, au chargement de mon userform, il faut vérifier si les cellules sont vides ou non pour ne proposer de mettre à jour que les cellules déjà remplies avec une réorganisation des frames en fonction des frames qui vont apparaitre.

J'ai commencé mon code mais étant toujours à mes début en programmation, j'ai pas pu aller jusqu'au bout.

J'espère être assez claire.

Merci d'avance

78test8.xlsm (24.71 Ko)

Bonjour

Modifies la fin de la macro UserForm_Activate

Dim fram As Control, caz As CheckBox
  t = 30
  For Each fram In Me.Controls
    If TypeName(fram) = "Frame" Then
      If fram.Visible = True Then
        fram.Top = t
        t = t + 30
      End If
    End If
  Next
End Sub

Bonsoir Banzai64,

Merci pour ton code.

Toujours dans la même boucle, comment peut-on redimensionner la hauteur du userform en fonction du nombre de frames visibles?

Maintenant, pour le bouton valider, comment traduire l'instruction suivante en code VBA:

[b]Pour chaque checkbox dans userform

Sinon msgbox ("Veuillez faire un choix!")[/b]

Merci d'avance

Pour le bouton valider, j'ai essayé le code suivant [qui ne marche pas bien sûr ]

Dim fram As Control, caz As CheckBox, i(2 To 6) As Integer

For Each fram In USFMAJ.Controls
    If TypeName(fram) = "Frame" Then
        For Each caz In fram.Controls
            If TypeName(caz) = "checkbox" Then
                If caz.Value = True Then
                i = 2
                Sheets("feuil1").Range("b" & i).ClearContents
                i = i + 1
                End If
            End If
        Next
    End If
Next

Unload me

Bonjour

A tester

Grand merci Banzai64.

Rechercher des sujets similaires à "manipulation frames userform"