Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Pb sur Macro

11 réponses
Avatar
philou36
Bonjour =E0 tous !

J'ai un soucis avec cette macro. Elle marche parfaitement jusqu'=E0 la
178=E8me copie. Ensuite, il copie mais sur le dernier cr=E9e et il copie
le dernier normalement.

Sub CreationOnglet()
' Cr=E9ation des onglets selon la feuille Modele
For Each c In Range([b2], [b65000].End(xlUp))
On Error Resume Next
temp =3D Sheets(c.Value).Range("b2").Value
If Err > 0 Then
Sheets("Modele").Copy After:=3DSheets(Sheets.Count)
ActiveSheet.Name =3D c
ActiveSheet.Hyperlinks.Add Anchor:=3Dc, Address:=3D"", _
SubAddress:=3D"'" & c & "'" & "!b2", TextToDisplay:=3Dc.Value
End If
Next
Feuil1.Visible =3D True
Feuil1.Select
End Sub

Qu'en pensez vous ?

Merci pour vos pr=E9cieux conseils !

Bonne journ=E9e.

Philippe

1 réponse

1 2
Avatar
Mishell
Voilà qui est étonnant.
Quelle formule n'est pas copiée?

Sinon ta procédure va extremement vite. Comment as tu fait ??



J'ai simplement remplacé
Sheets("Modele").Copy After:=Sheets(Sheets.Count)
par
Set shtoto = Sheets.Add(After:=Sheets(Sheets.Count))
C'est peut-être ce qui augmente la rapidité d'exécution. Je ne sais pas. Il
faudrait demander aux gurus.

Elle pourrait être encore plus rapide en mettant au début de la procédure,
la commande
Application.ScreenUpdating = False

"Calou" wrote in message
news:Oc%
Bonjour,
Ta procédure va à son terme mais le soucis c'est qu'il copie la feuille
modèle mais sans certaine formule. Sinon ta procédure va extremement vite.
Comment as tu fait ??

Cette procédure tourne mais à la vitesse d'une escargot (environ 250
matricule et noms à ecrire dans un tableau).

Qu'en penses tu ?

Bonne journée

Philippe
"Mishell" a écrit dans le message de news:
e$
Est-ce que ca fonctionne avec ce code?
Sub CreationOnglet()
For Each c In Range([b2], [b65000].End(xlUp))
On Error Resume Next
temp = Sheets(c.Value).Range("b2").Value
If Err > 0 Then
Err.Clear
On Error GoTo 0
' Sheets("Modele").Copy After:=Sheets(Sheets.Count)
Dim shtoto As Worksheet

Set shtoto = Sheets.Add(After:=Sheets(Sheets.Count))

shtoto.Name = c

Sheets("Modele").Select
Sheets("Modele").Cells.Select
Application.CutCopyMode = False
Selection.Copy

shtoto.Select
ActiveSheet.Paste
Application.CutCopyMode = False

Sheets("Accueil").Select
c.Select

c.Hyperlinks.Add Anchor:=c, Address:="", _
SubAddress:="'" & c & "'" & "!b2" ', TextToDisplay:=c.Value

ActiveCell.Select

End If
Next
Feuil1.Visible = True
Feuil1.Select
End Sub

Mishell

"philou36" wrote in message
news:
Bonjour à tous !

J'ai un soucis avec cette macro. Elle marche parfaitement jusqu'à la
178ème copie. Ensuite, il copie mais sur le dernier crée et il copie
le dernier normalement.

Sub CreationOnglet()
' Création des onglets selon la feuille Modele
For Each c In Range([b2], [b65000].End(xlUp))
On Error Resume Next
temp = Sheets(c.Value).Range("b2").Value
If Err > 0 Then
Sheets("Modele").Copy After:=Sheets(Sheets.Count)
ActiveSheet.Name = c
ActiveSheet.Hyperlinks.Add Anchor:=c, Address:="", _
SubAddress:="'" & c & "'" & "!b2", TextToDisplay:=c.Value
End If
Next
Feuil1.Visible = True
Feuil1.Select
End Sub

Qu'en pensez vous ?

Merci pour vos précieux conseils !

Bonne journée.

Philippe








1 2