Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Changer de colonne dans une nouvelle feuille

  • Initiateur de la discussion Initiateur de la discussion colaplsus
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

colaplsus

XLDnaute Nouveau
Bonjour à tous
Voici mon probleme, je dois dans le cadre de mon stage réaliser une pointeuse, tout va bien, à partir des données brutes, j'ai crée une macro qui pour chaque matricule cree un onglet au nom de ce matricule dans lesquels les données sont rangées, mais ils me demandent avant cette étape que tout soit remis dans le bon ordre.
Pour mieux comprendre, voici le fichier ci-joint.
et voici le code au depart
Code:
    Dim NomEmployer(10) As String
Dim NumereauMatricule(10) As String
Dim K As String
Dim enplacementEmployer(10) 'je ne savais pas comment appeler la variable
 
NomEmployer(1) = "toto" ' nom employer et matricule qui corespond
NumereauMatricule(1) = 4127
NomEmployer(2) = "tata"
NumereauMatricule(2) = 4144
NomEmployer(3) = "tarzen"
NumereauMatricule(3) = 4145
NomEmployer(4) = "DD"
NumereauMatricule(4) = 4149
NomEmployer(5) = "moi"
NumereauMatricule(5) = 4158
NomEmployer(6) = "toi"
NumereauMatricule(6) = 4163
NomEmployer(7) = "lui"
NumereauMatricule(7) = 4164
NomEmployer(8) = "elle"
NumereauMatricule(8) = 4166
NomEmployer(9) = "autre"
NumereauMatricule(9) = 4169
 
EmployerTotal = 9 'nombre total d'employer
 
For i = 1 To EmployerTotal
On Error Resume Next 'créé les feuil feuil
   Sheets(NumereauMatricule(i)).Delete
   On Error GoTo 0
   Sheets.Add
   ActiveSheet.Name = NumereauMatricule(i)
   With ActiveWorkbook.Worksheets(NumereauMatricule(i))
        .Range("A1").Value = "Date"
        .Range("B1").Value = "entrée 1"
        .Range("C1").Value = "sortie 1"
        .Range("D1").Value = "entrée 2"
        .Range("E1").Value = "sortie 2"
        .Range("F1").Value = "Total"
        .Range("i1").Value = NumereauMatricule(i)
        .Range("i2").Value = NomEmployer(i)
    End With
Next i
 
 
 
 
j = 2
For i = 1 To EmployerTotal
enplacementEmployer(i) = 2
Next i
matriculePressedent = "0"
 
While ActiveWorkbook.Worksheets("Pointeuse 1").Cells(j, 1).Value <> "" 'boucle tent qu'il y a des valeur, on ne sort pas de la boucle
    For i = 1 To EmployerTotal
        If ActiveWorkbook.Worksheets("Pointeuse 1").Cells(j, 4).Value = NumereauMatricule(i) Then
            K = NumereauMatricule(i)
            M = i
        End If
    Next i
    
    If matriculePressedent = K And L = 3 Then
        L = 4
    Else
        ' tu peux placé le code ici
        ' ActiveWorkbook.Worksheets(K).Cells(enplacementEmployer(M),1).Value = date
        L = 2
        enplacementEmployer(MPressedent) = enplacementEmployer(MPressedent) + 1
    End If
    
    ActiveWorkbook.Worksheets(K).Cells(enplacementEmployer(M), L).NumberFormatLocal = "hh:mm"
    ActiveWorkbook.Worksheets(K).Cells(enplacementEmployer(M), L).Value = ActiveWorkbook.Worksheets("Pointeuse 1").Cells(j, 3).Value
    ActiveWorkbook.Worksheets(K).Cells(enplacementEmployer(M), 1).Value = ActiveWorkbook.Worksheets("Pointeuse 1").Cells(j, 2).Value
    L = L + 1
    j = j + 1
    ActiveWorkbook.Worksheets(K).Cells(enplacementEmployer(M), L).NumberFormatLocal = "hh:mm"
    ActiveWorkbook.Worksheets(K).Cells(enplacementEmployer(M), L).Value = ActiveWorkbook.Worksheets("Pointeuse 1").Cells(j, 3).Value
    ActiveWorkbook.Worksheets(K).Cells(enplacementEmployer(M), 1).Value = ActiveWorkbook.Worksheets("Pointeuse 1").Cells(j, 2).Value
    j = j + 1
    matriculePressedent = K
    MPressedent = M
 
Wend
End Sub
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
8
Affichages
233
Réponses
4
Affichages
180
Réponses
5
Affichages
241
Réponses
8
Affichages
471
Réponses
10
Affichages
282
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
174
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…