Bonjour à tous,
Le code ci-dessous me permet de créer une feuille de calcul dans un fichier lorsque le numéro afficher dans une Combo n'existe pas et d'y insérer des éléments saisis. Par contre, si la feuille existe, seules les données sont saisies dans la feuille correspondante.
Cependant, je rencontre un problème, lorsque la Combo est vide, j'ai un message d'erreur sur la ligne en gras, ce qui est normal puisque dans mon cas il est censé y avoir un numéro dans la combo (CmbMarche) qui correspond à NumLign du code.
Donc, comment ajouter un boût de code qui lorsque la combo est vide, n'ouvre pas le fichier et ne créé pas la feuille.
Merci par avance
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 If Dir(stFichComp) = "" Then 'Si le fichier Récap prest.xls n'existe pas, on le crée Workbooks.Add (1) NewRech = True Set wbkBatiprix = ActiveWorkbook 'On nomme la première feuille Set shtBati = wbkBatiprix.ActiveSheet shtBati.Name = NumLign wbkBatiprix.SaveAs Filename:=stFichComp Else Set wbkBatiprix = Workbooks.Open(stFichComp) 'Si le fichier Récap prest.xls existe Existe = False For Each wst In Worksheets If wst.Name = NumLign Then 'On cherche si la feuille Lx, avec x=n° ligne existe Set shtBati = wst Existe = True Exit For End If Next wst If Not Existe Then Set shtBati = wbkBatiprix.Sheets.Add(Type:=xlWorksheet) 'Sinon on ajoute une nouvelle feuille nommée Lx shtBati.Name = NumLign NewRech = True End If End If
Partager