Mise a jour XLA ?

abtony

XLDnaute Impliqué
Bonjour le forum,

j'ai une macro xla avec des commandes personnalisé, sur cette macro il y a des feuilles de calcul type que j'ouvre depuis une barre d'outils, dans une cellule de cette feuille type j'ai un numéro de devis de départ donc a la création de la nouvelle feuille de devis le numéro est bien incrémenté d'une valeur.

est ce possible de mettre dans la feuille type du xla la nouvelle valeur ainsi crée dans ce nouveau devis ?

sinon l'incrémentation me donnera toujours le même numéro !!

je doute que ce soit possible mais je pose la question quand même on ne sait jamais.

Merci pour votre aide
 

abtony

XLDnaute Impliqué
Re : Mise a jour XLA ?

re le forum,

même soucis, ca incrémente bien a l'ouverture du premier devis, mais pas du deuxième !

car la mise a jour sur la feuille mère ne se fait pas.

a moins que j'ai passée un détails !

comment tu a fait si cela fonctionne pour toi ?

Merci encore
 

abtony

XLDnaute Impliqué
Re : Mise a jour XLA ?

Re bonsoir le forum,

Juste pour infos, ca peux servir pour d'autres.

il faut mettre incrémentation du numéro dans thisworkbook a la fermeture d'excel

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
ThisWorkbook.IsAddin = False
Range("Num").Value = Range("Num").Value + 1
ThisWorkbook.IsAddin = True
ThisWorkbook.Save
On Error Resume Next
End Sub

et ça fonctionne au poil

Bonne soirée a tous
 

abtony

XLDnaute Impliqué
Re : Mise a jour XLA ?

Bonjour le forum,

petite modif toujours pour info pour la base;

je me suis rendu compte que l'incrémentation se fait uniquement a la fermeture du xla, si le xla est ouvert et que je crée deux ou trois devis a l'affilée ca ne fonctionne plus; donc voici la solution a mettre sur la macro de création du nouveau devis par copie de la feuille type du xla.

Code:
Dim NomClasseur As String
On Error Resume Next
If Not ActiveSheet Is Nothing Then
Application.ScreenUpdating = False
[B]ThisWorkbook.IsAddin = False
Range("Num").Value = Range("Num").Value + 1
ThisWorkbook.IsAddin = True
ThisWorkbook.Save[/B]
ThisWorkbook.Sheets("Débours").Copy after:=ActiveSheet
On Error Resume Next
NomClasseur = "Normal_" & Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 4)
ActiveWorkbook.Styles(NomClasseur).Delete
On Error GoTo 0
Else
MsgBox "Choisissez d'abord une feuille de calcul ou cliquez sur Document > Création nouveau fichier travail."
End If

comme ceci plus de problème l'enregistrement du nouveau numéro incrémenter se fait bien sur le XLA.

@ +
 

Discussions similaires

Réponses
3
Affichages
391

Statistiques des forums

Discussions
312 836
Messages
2 092 651
Membres
105 478
dernier inscrit
tim51