XL 2010 Transformer Macro en Fonction [RESOLU]

cathodique

XLDnaute Barbatruc
Bonsoir,
Je dois mettre en place une série de tests pour vérifier qu'aucune donnée n'est manquante avant l'archivage.
J'ai une suite de ElseIf et celle qui est ci-dessous n'est pas complète. En effet, ainsi je ne vérifie que la cellule C12. Alors qu'en fait, il faudrait vérifier à partir de la ligne 12, si col B non vide alors col C doit être non vide.
VB:
 ElseIf .Range("C12") = "" Then  
                  MsgBox "Il n'y a aucunes données à archiver!", vbCritical  
            Exit Sub
ex:si B16 est non vide et que C16 est vide, on doit avoir une message et sortie de la procédure.
J'ai fait une macro, mais je ne sais pas comment la transformer en fonction.
VB:
Sub verif()
Dim i As Integer
i = 12
    Do While Cells(i, 2) <> ""
        If Cells(i, 2).Offset(, 1) = "" Then MsgBox "pas bon"
        Exit Sub
    i = i + 1
    Loop
End Sub

Merci beaucoup.
 

jpb388

XLDnaute Accro
Bonjour à tous
comme ceci
VB:
Function verif() As Boolean
Dim i As Integer
i = 12
    Do While Cells(i, 2) <> ""
        If Cells(i, 2).Offset(, 1) = "" Then verif = True: Exit Function
    i = i + 1
    Loop
End Function

Sub prog()
    If verif = True Then MsgBox "pas bon":exit sub
End Sub
 

cathodique

XLDnaute Barbatruc
Bonjour jpb388:),

Merci beaucoup. C'est exactement, ce que je cherchais à obtenir.
Depuis hier, je n'ai pas chômé. et donc, j'ai continué mes recherches et j'ai trouvé une autre approche avec la fonction CountA. Par contre, je bute sur une autre difficulté.
VB:
Set Plg1 = .Range(.Cells(12, 3), .Cells(.Rows.Count, 2).End(3))'**Référence erronée
ElseIf Application.CountA(Plg1) = 0 Then
            MsgBox "pas bon!" , vbCritical
Exit Sub
Le probléme est que je dois définir cette plage (colonne 3) mais en comptant le nombre de ligne de la colonne 2.
Je me suis aperçu que par code Plg1.Select, la colonne 2 et 3 sont sélectionnées.
En attendant, je mets en place ta fonction pour la tester. Et reviens, te mettre au courant.
Merci infiniment.
Bon dimanche.
 

Discussions similaires

Statistiques des forums

Discussions
312 203
Messages
2 086 195
Membres
103 153
dernier inscrit
SamirN