Décalage de ma formule VBA dans les lignes de mon tableau

MACx

XLDnaute Occasionnel
Bonjour à vous,

SVP j'ai un méga problème que je n'arrive pas à résoudre, et je vous avoue ne pas avoir su comment chercher sur le site si mon problème avait déjà été posé auparavant.
Voilà, donc ci-joint un fichier avec plusieurs feuilles dont deux que nous allons utiliser ici:
Feuilles VALIDATION et BDDFA
La feuille BDDFA est un tableau alimenté par une base de données SQL et la feuille Validation est un extrait de BDDFA (dépends donc de cette dernière)

Il y a un code VBA sur la feuille Validation que voici :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
 'Etat des factures
     
  If Target.Column = 8 Then
     If Target = "Validée" Then
            Cells(Target.Row, "I") = Date
         Else
            Cells(Target.Row, "I").ClearContents
         End If
     End If
     
 If Target.Column = 10 Then
    If Target = "Non Envoyée" Or Target = "A Envoyer" Then
             Cells(Target.Row, "K").ClearContents
         Else
             Cells(Target.Row, "K") = Date
         End If
     End If

 End Sub

Selon le libellé de la colonne H donc il y aura des petis changements sur la colonne J (au niveau du libellé) et de couleur sur les colonnes A, B & H comme vous pourrez le constater.

Je suis amateur en VBA alors je ne sais pas si par rapport à ce que j'ai fait, il y'a plus simple ou plus intelligent mais en tous cas le résultat focntionne comme je le désire... enfin presque !

Mon problème est que au fur et à mesure que la base de données BDDFA va s'alimenter des lignes dans la feuille Validation vont s'incrémenter et c'est là que je m'aperçois que les valeurs des colonnes H à K ne suivent plus.

Il vous suffit de faire un test en ajoutant dans BDDFA une ligne en A2 (nouvelle facture 9440), vous retournez dans la feuille validation et vous verrez que ce n'est plus les factures 9433 et 9434 qui sont validées mais les 9434 et 9435 ! :(

Comment puis-je faire pour que ce décalage se fasse de manière régulière.
Je ne comprends pas pourquoi l'incrémentation de ligne décale mon code et donc mes valeurs des cellules de H à K.

J'espère avoir été assez clair, et merci d'avance à ceux qui pourront m'aider !
 

Pièces jointes

  • XLD_MACx_ValFA.xlsm
    149.3 KB · Affichages: 33

MACx

XLDnaute Occasionnel
Re : Décalage de ma formule VBA dans les lignes de mon tableau

PS: J'ai oublié d'indiquer qu'entre temps un autre problème s'est glissé sur le fichier... à son ouverture. Un message d'erreur apparait mais il suffit de cliquer sur Oui et tout s'ouvre normalement. Peut être que ça ne le fera pas sur votre ordinateur mais si jamais ça vous le fait et vous savez comment solutionner ça... sinon tampis. Merci ;)
 

MACx

XLDnaute Occasionnel
Re : Décalage de ma formule VBA dans les lignes de mon tableau

Salut PAF,
Apparemment le site ne prends pas de fichier en version 2003 prenant en charge les macros (Fichier non valide!). :(
En effet l'extension créée est .xltm !
Mais qu'est ce que tu fais encore avec une version 2003 ???? lol
Merci qd mm ! :)
 
Dernière édition:

MACx

XLDnaute Occasionnel
Re : Décalage de ma formule VBA dans les lignes de mon tableau

En plus le fichier était trop lourd pour une version 2003 sans macros alors j'ai du supprimer des feuilles et ne garder que les deux qui m’intéressent pour ce problème là.
Ci-joint donc le fichier v2003 sans macros

PS: j'ai vraiment galéré pour obtenir ce fichier alors je compte sur toi pour l'aider! ;)
 

Pièces jointes

  • XLD_MACx_ValFAv2003sm.xls
    167.5 KB · Affichages: 28

Paf

XLDnaute Barbatruc
Re : Décalage de ma formule VBA dans les lignes de mon tableau

Re,

pas de chance, la fonction ISERROR n'est pas connu d'Excel 2003.

En modifiant en A2 (et suivantes) de la feuille Validation la formule en : =BDDFA!$A2, l'insertion d'une nouvelle ligne en ligne 2 de la feuille BDDFA, ne provoque aucun décalage. La formule en A2 de la feuille Validation passe automatiquement en :=BDDFA!$A3 ( même décalage pour les autres formules)
Mais rien n'est prévu pour que la nouvelle saisie en feuille BDDFA soit reportée en feuille Validation ?

Désolé de ne pouvoir t'aider plus.

Bonne suite

PS Excel 2003 avec ou sans macro = .xls
 

MACx

XLDnaute Occasionnel
Re : Décalage de ma formule VBA dans les lignes de mon tableau

Le décalage n'est pas sur ce qu'il se passe en colonne A mais plutôt en colonne H (feuille Validation) :/
Il n'y a pas de saisie en feuille BDDFA, celle-ci est alimentée automatiquement depuis une base SQL
Merci pour ton aide ! ;)
 

Statistiques des forums

Discussions
312 160
Messages
2 085 838
Membres
103 000
dernier inscrit
Nath13