• Initiateur de la discussion Initiateur de la discussion boulettedu84
  • 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 !

B

boulettedu84

Guest
Bonjours,
J'ai un petit problème avec une inputbox;
Je dois ouvrir un modèle existant pour en faire une copie et renommer la copie.

je parvient a le faire, cependant lorsque je donne un nom déja existant il se met en défaut.

voici le code que j'utilise:

Sub Rectangle6_Clic()

Nom = InputBox("Nom du client :")
If Nom = "" Then Exit Sub
Sheets("Bon d'intervention").Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = Nom


End Sub



Merci d'avance pour vos réponses 😉
 
Re : Problème input box

Bonjour,

il y a sans doute lieu de vérifier si la feuille existe déjà, regarde ceci si cela peut t'aider :
Code:
Option Explicit
Sub test()
Dim nom As String
nom = InputBox("Nom du client :")
If nom = "" Then Exit Sub
If Not FeuilleExiste(nom) Is Nothing Then Exit Sub
Sheets("Bon d'intervention").Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = nom
End Sub
Function FeuilleExiste(f As String) As Worksheet
On Error Resume Next
Set FeuilleExiste = Worksheets(f)
End Function

bonne journée
@+
 
Re : Problème input box

Re,

on pourrait également le coder ainsi :
Code:
Option Explicit
Sub test()
Dim nom As String

Do
    nom = InputBox("Nom du client :")
Loop While nom = "" Or Not FeuilleExiste(nom) Is Nothing

Sheets("Bon d'intervention").Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = nom
End Sub
Function FeuilleExiste(f As String) As Worksheet
On Error Resume Next
Set FeuilleExiste = Worksheets(f)
End Function

A voir comment tu vois la chose....
 
Re : Problème input box

Désolé mais je me demandais s'il était possible d'apporter un petit plus:
Serait il possible que lorsqu'on appui sur annuler ou sur la croix cela ferme la boîte de dialogue ?
 
Re : Problème input box

Re,

modifie comme suit :
Code:
Sub Rectangle1_Clic()
Dim nom As String
Do
    nom = Application.InputBox("Nom du client :", , nom)
    If nom = "Faux" Then Exit Sub
Loop While nom = "" Or Not FeuilleExiste(nom) Is Nothing
Sheets("Bon d'intervention").Copy after:=Sheets(Sheets.Count)
ActiveSheet.Name = nom
End Sub
Function FeuilleExiste(f As String) As Worksheet
On Error Resume Next
Set FeuilleExiste = Worksheets(f)
End Function

bon après midi
@+
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
5
Affichages
609
Réponses
3
Affichages
638
Retour