the jeremie
XLDnaute Nouveau
Bonjour, je calle sur une programmation d'un fichier de gestion. etant débutant, mon code n'est pas forcément le plus adapté mais j'essaie de faire pour le mieux.
j'ai une liste de nom dans une page. Je tri cette liste par ordre alphabétique puis ensuite je veux copier la feuille ressource et la renommé par le nom de l'opérateur et faire cela pour chaque nom de ma liste
Si la feuille existe déja, je veux simplement afficher un message le précisant et ne pas créer de doublons ni la remplacer.
j'ai fait pour cela un code, mais il m'indique a chaque fois que la feuille existe
Si vous voyez ce qui peut dérailler, je suis preneur de toutes explications. Merci d'avance
j'ai une liste de nom dans une page. Je tri cette liste par ordre alphabétique puis ensuite je veux copier la feuille ressource et la renommé par le nom de l'opérateur et faire cela pour chaque nom de ma liste
Si la feuille existe déja, je veux simplement afficher un message le précisant et ne pas créer de doublons ni la remplacer.
j'ai fait pour cela un code, mais il m'indique a chaque fois que la feuille existe
Function FeuilleExiste(wk As Workbook, stFeuille) As Boolean
On Error Resume Next
FeuilleExiste = Not (wk.Sheets(stFeuille) Is Nothing)
End Function
Sub affichage_feuille()
Dim l As Integer
l = 4
Sheets("données").Select
' tri de la liste
Range("D1:E102").Select
ActiveWorkbook.Worksheets("Données").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Données").Sort.SortFields.Add Key:=Range("D2: D102" _
), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ActiveWorkbook.Worksheets("Données").Sort
.SetRange Range("D1: E102")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
End With
For RESSOURCE = 2 To 100
If Cells(RESSOURCE, 4).Value = "" Then
Else
If FeuilleExiste(ThisWorkbook, "RESSOURCE") Then
MsgBox "la feuille existe déjà pour " & Cells(RESSOURCE, 4).Value
Else
Sheets("RESSOURCE").Copy After:=Sheets(l)
ActiveSheet.Name = Sheets("Données").Cells(RESSOURCE, 4).Value
l = l + 1
End If
End If
Next RESSOURCE
End Sub
Si vous voyez ce qui peut dérailler, je suis preneur de toutes explications. Merci d'avance
Dernière édition: