Bonjour à tous,
Je voudrais réaliser un classeur de nom "demande d'achat":
Avec une macro intégrée dans ce classeur qui sert à incrémenter le nom de la feuille par exemple:
- demande d'achat001
- demande d'achat002
- demande d'achat003
Le script qui correspond à ça est le suivant:
Sub AutoSaveIncremental()
Dim MyName As String, MyNumber As Byte
MyName = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 4)
If Val(Right(MyName, 3)) = 0 Then
MyName = MyName & "001"
Else
MyNumber = Val(Right(MyName, 3))
MyName = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 7) & Format(MyNumber + 1, "000")
End If
ThisWorkbook.SaveAs MyName
End Sub
Le problème que je rencontre est qu'une fois utilisé il me créer bien le classeur "demande d'achat001" mais si je le ferme et que je réutilise la macro il me marque :
Un fichier nommé "demande d'achat001.xls" existe déjà a cet emplacement. Voulez vous le remplacer?
Avec 3 trois choix possible:
- Oui, dans ce cas il le remplace
- Non, dans ce cas il me met erreur d'exécution
- Annulé
Je voudrais savoir si il serait possible qu'il mémorise à la valeur ou l'incrémentation c'est arrêté pour qu'il reprenne une fois que l'on lui demande.
Je voudrais réaliser un classeur de nom "demande d'achat":
Avec une macro intégrée dans ce classeur qui sert à incrémenter le nom de la feuille par exemple:
- demande d'achat001
- demande d'achat002
- demande d'achat003
Le script qui correspond à ça est le suivant:
Sub AutoSaveIncremental()
Dim MyName As String, MyNumber As Byte
MyName = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 4)
If Val(Right(MyName, 3)) = 0 Then
MyName = MyName & "001"
Else
MyNumber = Val(Right(MyName, 3))
MyName = Left(ThisWorkbook.Name, Len(ThisWorkbook.Name) - 7) & Format(MyNumber + 1, "000")
End If
ThisWorkbook.SaveAs MyName
End Sub
Le problème que je rencontre est qu'une fois utilisé il me créer bien le classeur "demande d'achat001" mais si je le ferme et que je réutilise la macro il me marque :
Un fichier nommé "demande d'achat001.xls" existe déjà a cet emplacement. Voulez vous le remplacer?
Avec 3 trois choix possible:
- Oui, dans ce cas il le remplace
- Non, dans ce cas il me met erreur d'exécution
- Annulé
Je voudrais savoir si il serait possible qu'il mémorise à la valeur ou l'incrémentation c'est arrêté pour qu'il reprenne une fois que l'on lui demande.