Erreur d'execution 94 de Null

Bonjour

Je suis encore novice au niveau du VBA et mon problème est le suivant :

J'ai créé un formulaire à remplir sur une feuille. Une fois le formulaire rempli, les valeurs notées dans certaines cases se rapportent dans une autre feuille qui est tableau récapitulatif du formulaire crée.

La recherche s'effectue entre deux dates dont voici le code :

Sub Valider()

    Set fr = Sheets("RECAP CONTRAT")

    Call VerifDesSaisies
    If flag = 1 Then Exit Sub

    'Report sur la feuille RECAP CONTRAT
    lgn = fr.Range("A" & Rows.Count).End(xlUp)(2).Row

    For i = 1 To 25
        adSource = Choose(i, "B3", "B7", "B9", "B13", "F11", "B11", "F16", "D11", "B16", "D16", "I16", "C34", "C36", "C37", "H11", "I3")
        adDest = Choose(i, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 23, 25)
        fr.Cells(lgn, adDest) = Range(adSource)

    Next i

    ActiveSheet.Name = Format(Range("B3"), "000") & "-" & Range("B7")
    fr.Range("A" & lgn) = Range("B3")

    MsgBox "Le contrat n°" & Format(Range("B3"), "000") & " est enregistré"
    Sheets("RECAP CONTRAT").Activate
End Sub

Le problème est que lorsque l'un des champ est vide et que je j'exécute la macro, je reçois le message suivant : "Erreur d'exécution 94, Utilisation incorrecte de Null"

Quelqu'un aurait t'il la solution ?

Je vous remercie par avance.

Phoenix_45

Bonjour,

For i = 1 To 16

Corrdialement.

MFerrand a écrit :

Bonjour,

For i = 1 To 16

Corrdialement.

Bonjour et merci MFerrand

Je rencontre toujours l'erreur

Quand j'appuie sur débuggage il me situe l'erreur ici :

For i = 1 To 16

adSource = Choose(i, "B3", "B7", "B9", "B13", "F11", "B11", "F16", "D11", "B16", "D16", "I16", "C34", "C37", "H11", "I3")

adDest = Choose(i, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 23, 25)

fr.Cells(lgn, adDest) = Range(adSource)

Tu ne te foutrais pas un peu du monde !

For i = 1 To 25
        adSource = Choose(i, "B3", "B7", "B9", "B13", "F11", "B11", "F16", "D11", "B16", "D16", "I16", "C34", "C36", "C37", "H11", "I3")
        adDest = Choose(i, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,14, 23, 25)
        fr.Cells(lgn, adDest) = Range(adSource)

    Next i

Il y a 16 éléments... Donc...

For i = 1 To 16
 adSource = Choose(i, "B3", "B7", "B9", "B13", "F11", "B11", "F16", "D11", "B16", "D16", "I16", "C34", "C37", "H11", "I3")
 adDest = Choose(i, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 23, 25)
 fr.Cells(lgn, adDest) = Range(adSource)

Tu en supprimes un dans chaque liste pour passer à 15 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Basta !

MFerrand a écrit :

Tu ne te foutrais pas un peu du monde !

Je crois pas et surtout je me permettrai pas !

si je demande de l'aide c'est que je n'avais pas vu !

En tout cas merci

Rechercher des sujets similaires à "erreur execution null"