Microsoft 365 macro générer nouveau document et remplissage auto d'1 historique : pb si plusieurs pages

chris63*

XLDnaute Nouveau
Bonjour à tous,

(pardon pour la longueur du titre, pas facile de résumer...)

Toujours dans la création de documents (devis, factures...), avec vos conseils, j'ai réussi à incrémenter les n°, mettre les infos voulues dans l'historique.

Jusque là tout va bien... si je ne dépasse pas les 15 lignes de mon "tableau de base" (pour ce document)

Évidemment, j'ai souvent besoin de rajouter des lignes et là, ça ne fonctionne plus... : mon historique ne reprend pas les infos voulues et le nouveau document "vierge" généré garde les infos des lignes supplémentaires du document précédent (suis je bien claire ? 🤔)

C'est évident puisque la macro est définie avec les cellules du tableau de base, mais y a t'il un code particulier qui pourrait arranger cela ?

Je vous joins les 2 fichiers, ce sera peut être plus parlant..

Merci :)
 

Pièces jointes

  • modèle devis2 macro tests.xlsm
    69.2 KB · Affichages: 6
  • modèle devis2 macro tests 2.xlsm
    70.1 KB · Affichages: 5
Solution
Bonjour @chris63*

Pour ton 1er pb :
Il faut remplacer 33 par 35
VB:
'Remise en place du devis normalisé
Dim NbLigSup&

If NbLig > 35 Then NbLigSup = NbLig - 18: Rows("18:" & NbLigSup).Delete shift:=xlUp

Pour le 2eme pb :
Il attend un nombre et quand tu mets "210017v2" c'est pour excel du texte et il ne peut pas rajouter 1
Le test se fait ici :
Code:
 If IsNumeric(.Range("D5").Value) = True Then .Range("D5").Value = .Range("D5").Value + 1
Si c'est un nombre on incrémente sinon tu le fais manuellement....

Le nouveau code modifié avec la correction des 2 pb...

VB:
Sub ARCHIVER()

Application.ScreenUpdating = False
Dim NbLig&, Ligne&
NbLig = Application.Match("TOTAL H.T", Range("C:C"), 0)...

Statistiques des forums

Discussions
312 228
Messages
2 086 421
Membres
103 205
dernier inscrit
zch