Bonjour,
Je dispose d'un fichier avec plusieurs onglets nommés de 1 à 50 par exemple et je cherche à insérer un numéro dans la case B4 de chaque onglet du fichier excepté dans le premier onglet mais il porte un "vrai" nom. La forme du numéro est 00A B, la partie A doit s'incrémenter à chaque onglet, A vaut 1 pour l'onglet 1 et A vaudra 50 pour l'onglet 50, etc. La contrainte étant que la partie variable soit sur 3 chiffres, exemple : 00005 6378 => A=005.
Autre contrainte, toujours avec l'exemple précité obtenir en case B4 de chaque fichier : "SN: 00005 6378", avec les espaces qui vont bien. Je ne sais pas comment sélectionner chaque onglet, y copier l'information voulue et passer à l'onglet suivant et ainsi de suite.
La suppression des 3 onglets d'origine du nouveau fichier créé passent par le message systématique suivant pour les 3 onglets : Les feuilles sélectionnées peuvent contenir des données. Pour supprimer définitivement les données, cliquer sur Supprimer. Est ce possible de s'affranchir de cette validation ?
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 Chm = "C:\Users\Desk\Desktop\" Workbooks.Add ActiveWorkbook.SaveAs Filename:=Chm & of & ".xlsx", _ FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False Workbooks("Fichier_essai").Sheets("Id").Copy After:=Workbooks("F12").Sheets(1) Workbooks("Fichier_essai").Sheets("Tableau").Copy After:=Workbooks("F12").Sheets(2) nb = 5 'simulation du nombre d'onglet à ouvrir For i = 1 To nb Sheets("Tableau").Copy After:=Sheets(Sheets.Count) 'copie en x onglets ActiveSheet.Name = "" & (i) Next i Sheets("Tableau").Select ActiveWindow.SelectedSheets.Delete Sheets("Feuil1").Delete Sheets("Feuil2").Delete Sheets("Feuil3").Delete
Le nom du fichier créé "F12" est en fixe, j'aimerai qu'il dépende d'une variable saisie en amont, par exemple TER. Comment peut on modifié la syntaxe du code ?
Partager