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

ajouter une ligne avec condition

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

F

faye

Guest
Bonjour

Au fait je travaille sur une feuille excel et j'aimerai créer un bouton " ajouter une ligne" qui en y cliquant ajoute une nouvelle ligne et te demande d'entrer les initiales d'un nom puis le nom et le prénom et crée automatiquement une nouvelle feuille dont son nom est les initiales du nom entré, une chose que j'ai réussi à faire. Mon probléme en est que si les initiales existent déja mon programme va beugger vu que la page qui va être créer ne pourra pas avoir comme nom les initiales tapées. Ainsi je voulais faire de sorte que si les initiales existent un message me dira que les initiales existent de sorte que je pourrai différencier les initiales, sachant que deux initiales identiques peuvent avoir des noms différents.
Merci de bien vouloir m'aider
 
Re : ajouter une ligne avec condition

Bonjour,

Je supposes que l'on parle macros VBA ici?

Une petite fonction trouvée sur le net pour vérifier qu'une feuille existe :
Code:
Function FeuilleExiste(wk As Workbook, stFeuille) As Boolean
 On Error Resume Next
 FeuilleExiste = Not (wk.Sheets(stFeuille) Is Nothing)
End Function
Et dans ton code de création de nouvelle feuille :
Code:
Sub JeCreeMaNouvelleFeuille()
Dim initiales As String
initiales = "FP"
  If FeuilleExiste(ThisWorkbook, initiales) Then
    MsgBox "Merci de changer les initiales"
    Exit Sub
  End If
  Sheets.Add
  With ActiveSheet
    .Name = initiales
  End With
End Sub
 
Re : ajouter une ligne avec condition

je parle bien de macro mais au fait on demande à l'utilisateur d'entrer les initiales et une fois les initiales entrées une nouvelles pages se crée ( au fait une page doit prendre une certaine forme donc j'ai du copier une page existante tout en la renommant).

Voici le programme que j'ai fait
Sub ajouter_initiales()

Création d 'une nouvelle ligne
ctiveSheet.Rows("8:8").Copy
ctiveSheet.Rows("8:8").Insert Shift:=xlDown
ctiveSheet.Rows("8:8").ClearContents
Range("C6").Select

'Ajout des initiales
Dim Initiales As String
Range("E8").Select
Selection.End(xlUp).Offset(1, 0).Select
Do
Initiales = InputBox(" entrez les initiales ")

Loop While Initiales = ""
ActiveCell.Value = Initiales


'Ajout de nom_prénom
Dim Nom_Prenom As String
Range("F9").Select
Selection.End(xlUp).Offset(1, 0).Select
Do
Nom_Prenom = InputBox(" entrez le nom et prénom ")
Loop While Nom_Prenom = ""
ActiveCell.Value = Nom_Prenom

'création d'une nouvelle page
Sheets("Exemple").Select
Sheets("Exemple").Copy After:=Sheets("PLANIF")
ActiveSheet.Name = Initiales

End Sub


je joins ma fiche excel
 
Dernière modification par un modérateur:
Re : ajouter une ligne avec condition

Il vaut alors mieux que tu testes dès le début si ces initiales servent déjà de nom à une feuille :
remplace:
Code:
Do
Initiales = InputBox(" entrez les initiales ")
Loop While Initiales = ""
Par :
Code:
Do
    Initiales = InputBox(" entrez les initiales ")
Loop While Initiales = "" Or FeuilleExiste(ThisWorkbook, Initiales)
et mets la fonction en dehors de ta sub :
Code:
Sub ajouter_initiales()

'Création d 'une nouvelle ligne
ActiveSheet.Rows("8:8").Copy
'Bla bla bla
'...........
'.............
'Etc.....
End Sub

Function FeuilleExiste(wk As Workbook, stFeuille) As Boolean
 On Error Resume Next
 FeuilleExiste = Not (wk.Sheets(stFeuille) Is Nothing)
End Function
 
- 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
15
Affichages
779
  • Question Question
XL 2021 listbox
Réponses
18
Affichages
736
Réponses
1
Affichages
234
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…