Création d'un onglet avec nomination variable
Fermé
zoanthaire
-
27 mai 2013 à 13:01
biboupifa Messages postés 54 Date d'inscription mardi 11 juin 2013 Statut Membre Dernière intervention 19 juillet 2013 - 19 juil. 2013 à 17:38
biboupifa Messages postés 54 Date d'inscription mardi 11 juin 2013 Statut Membre Dernière intervention 19 juillet 2013 - 19 juil. 2013 à 17:38
A voir également:
- Création d'un onglet avec nomination variable
- Rouvrir un onglet fermé - Guide
- Creation compte gmail - Guide
- Création compte google - Guide
- Media creation tool - Télécharger - Systèmes d'exploitation
- Création groupe whatsapp - Guide
3 réponses
scinarf
Messages postés
1119
Date d'inscription
samedi 18 novembre 2006
Statut
Membre
Dernière intervention
25 septembre 2014
252
27 mai 2013 à 14:03
27 mai 2013 à 14:03
dim i as integer
dim NomOnglet as String
nomOnglet = "ManouvelleFeuille"
for i = 1 to sheets.counter
if (sheets(i).name == nomOnglet) then
MSGbox "Le nom que vous proposez existe déjà il sera changé en " & nomOnglet & " (2)"
nomOblget = nomonglet & "(2)"
end if
next i
Dites moi si ca marche, logiquement il ne devrait pas y avoir d'erreur.
dim NomOnglet as String
nomOnglet = "ManouvelleFeuille"
for i = 1 to sheets.counter
if (sheets(i).name == nomOnglet) then
MSGbox "Le nom que vous proposez existe déjà il sera changé en " & nomOnglet & " (2)"
nomOblget = nomonglet & "(2)"
end if
next i
Dites moi si ca marche, logiquement il ne devrait pas y avoir d'erreur.
Mike-31
Messages postés
18351
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
12 décembre 2024
5 110
27 mai 2013 à 14:06
27 mai 2013 à 14:06
Salut,
En supposant que le nom de la feuille se trouve en cellule A2 de la feuille active
Sub InsereFeuille()
Dim n As Integer, trouve As Boolean
For n = 1 To Sheets.Count
If Sheets(n).Name = [A2].Value Then
trouve = True
MsgBox "La feuille " & [A2].Value & " existe déjà"
Exit For
End If
Next n
If Not trouve Then Sheets.Add.Name = [A2].Value
End Sub
En supposant que le nom de la feuille se trouve en cellule A2 de la feuille active
Sub InsereFeuille()
Dim n As Integer, trouve As Boolean
For n = 1 To Sheets.Count
If Sheets(n).Name = [A2].Value Then
trouve = True
MsgBox "La feuille " & [A2].Value & " existe déjà"
Exit For
End If
Next n
If Not trouve Then Sheets.Add.Name = [A2].Value
End Sub
J'ai essayé, mais cela ne fonctionne pas. j'ai noté ci-dessous le code que j'ai fait pour le moment. peut être que ce sera plus explicite.
Sub Renommer_onglet()
'avant il faudrait une condition qui ouvre la message box que dans le cas où l'onglet existe déjà
'ensuite :
If MsgBox("Cette préparation existe déjà, Voulez vous la remplacer", vbYesNo) = vbYes Then
Sheets("prepa_type").Select
Sheets("prepa_type").Copy After:=Sheets("prepa_type")
ActiveSheet.Name = Sheets("preparation").Range("D1") + " (V" + ")" + 'ici il me manque un code pour créer une numérotation pour chaque onglet identique : V1, V2, V3...
End If
Next
End Sub
J'espère que cela est assez explicite.
Sub Renommer_onglet()
'avant il faudrait une condition qui ouvre la message box que dans le cas où l'onglet existe déjà
'ensuite :
If MsgBox("Cette préparation existe déjà, Voulez vous la remplacer", vbYesNo) = vbYes Then
Sheets("prepa_type").Select
Sheets("prepa_type").Copy After:=Sheets("prepa_type")
ActiveSheet.Name = Sheets("preparation").Range("D1") + " (V" + ")" + 'ici il me manque un code pour créer une numérotation pour chaque onglet identique : V1, V2, V3...
End If
Next
End Sub
J'espère que cela est assez explicite.
eriiic
Messages postés
24603
Date d'inscription
mardi 11 septembre 2007
Statut
Contributeur
Dernière intervention
15 décembre 2024
7 247
27 mai 2013 à 14:48
27 mai 2013 à 14:48
Bonjour,
et une 3ème proposition : une fonction.
retourne 0 (False) si la feuille n'existe pas.
eric
et une 3ème proposition : une fonction.
Function existSheet(nomFeuille As String) As Long On Error Resume Next existSheet = Sheets(nomFeuille).Index End Function
retourne 0 (False) si la feuille n'existe pas.
eric
biboupifa
Messages postés
54
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
19 juillet 2013
Modifié par biboupifa le 19/07/2013 à 17:09
Modifié par biboupifa le 19/07/2013 à 17:09
Bonjour eriiic,
je n'arrive pas a comprendre ta fonction:
Dim NomFeuille As String
NomFeuille = "BDD_valeurs"
If Not existSheet(NomFeuille) Then
ActiveSheet.Name = NomFeuille
End If
c'est au niveau du code que je n'arrive pas a l'utiliser
cela me renvoi vrai ou faux et je n'arrive pas a m'en sortir
merci par avance
je n'arrive pas a comprendre ta fonction:
Dim NomFeuille As String
NomFeuille = "BDD_valeurs"
If Not existSheet(NomFeuille) Then
ActiveSheet.Name = NomFeuille
End If
c'est au niveau du code que je n'arrive pas a l'utiliser
cela me renvoi vrai ou faux et je n'arrive pas a m'en sortir
merci par avance
biboupifa
Messages postés
54
Date d'inscription
mardi 11 juin 2013
Statut
Membre
Dernière intervention
19 juillet 2013
19 juil. 2013 à 17:38
19 juil. 2013 à 17:38
nan c'est bon j'ai compris pourquoi ca ne marchait pas :)