Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

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

  • Initiateur de la discussion Initiateur de la discussion chris63*
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

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

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)...
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…