Insertion d'une nouvelle feuille et nommage dynamique

XIRPONOM

XLDnaute Nouveau
Bonjour à tous,

Voici mon pb:
J'ai besoin d'une macro qui automatise les séquences suivantes:

Je suis sur une feuille nommée xxxxx.n
n est un n° d'ordre
xxxxx est un texte quelconque

Je souhaite insérer une nouvelle feuille qui doit être nommée xxxxx.n+1
C'est à dire en incrémentant de 1 le n° d'ordre de la feuille de départ.

Merci pour votre aide et joyeuses Pâques.
 

Staple1600

XLDnaute Barbatruc
Re : Insertion d'une nouvelle feuille et nommage dynamique

Bonjour à tous

Sans plus de contexte (comme un fichier exemple ...:rolleyes:)
Code:
Sub a()
Dim n: n = 1
Sheets.Add.Name = "xxxxx." & n + 1
End Sub
et pour coller un peu plus à la question
Code:
Sub b()
Dim t, n&, x$
t = Split(ActiveSheet.Name, ".")
x = t(0): n = CLng(t(1))
Sheets.Add.Name = x & "." & n + 1
End Sub
 
Dernière édition:

Efgé

XLDnaute Barbatruc
Re : Insertion d'une nouvelle feuille et nommage dynamique

Bonjour Geli, Bonjour Gelinotte, Salut Staple :)

Pour mettre tout de suite la feuille à coté de sa sœur, et au cas où le feuille existe....

VB:
Sub b_()
Dim t, n&, x$, F As Worksheet
t = Split(ActiveSheet.Name, ".")
x = t(0): n = CLng(t(1))
On Error Resume Next
Set F = Sheets(x & "." & n + 1)
If Err Then
    Err.Clear
    Sheets.Add(After:=Sheets(ActiveSheet.Index)).Name = x & "." & n + 1
Else
    MsgBox " L'onglet " & x & "." & n + 1 & " est déja  présent" & vbLf & vbLf & "traitement interrompu", 1048640, "Feuille existante"
End If
End Sub

Cordialement
 

Discussions similaires

Membres actuellement en ligne

Aucun membre en ligne actuellement.

Statistiques des forums

Discussions
312 505
Messages
2 089 071
Membres
104 020
dernier inscrit
Mzghal