Valoche54000
XLDnaute Nouveau
Bonjour la communauté,
Sur le fichier téléversé, avec la macro '' répartition '', j'essaie de transférer les données de la feuille principale à d'autres onglets.
les colonnes H,I,J,M se déverseront dans les 20 onglets portant le nom des équipes automatiquement dés lors de la mise à jour de l'onglet ''20172018''
Exemple Ligne 3: dans les onglets '' ACAjaccio'' et '' Niort '' nous aurons H3,I3,J3, et O3.
Jusque là, j'y arrive. par contre je ne comprends pas pourquoi les cellules colorées ne le sont plus une fois transférées dans les différents onglets.
Sub répartition()
Dim C As Range, Ligne As Long
For i = 2 To Sheets.Count
Sheets(i).[A: D].Clear
Next i
With Sheets("20172018")
For Each C In .Range("H3", .Cells(.Rows.Count, 8).End(xlUp))
If C.Value <> "" Then
With Sheets(C.Offset(, 1).Value)
Ligne = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
If .[A1] = "" Then Ligne = 1
C.Resize(, 3).Copy .Cells(Ligne, 1)
C.Resize(, 3).Copy
.Cells(Ligne, 1).PasteSpecial xlPasteValues
C.Offset(, 5).Copy .Cells(Ligne, 4)
C.Offset(, 5).Copy
.Cells(Ligne, 4).PasteSpecial xlPasteValues
End With
With Sheets(C.Offset(, 2).Value)
Ligne = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
If .[A1] = "" Then Ligne = 1
C.Resize(, 3).Copy .Cells(Ligne, 1)
C.Resize(, 3).Copy
.Cells(Ligne, 1).PasteSpecial xlPasteValues
C.Offset(, 5).Copy .Cells(Ligne, 4)
C.Offset(, 5).Copy
.Cells(Ligne, 4).PasteSpecial xlPasteValues
End With
End If
Next C
End With
End Sub
Quelqu'un à une idée ?
Sur le fichier téléversé, avec la macro '' répartition '', j'essaie de transférer les données de la feuille principale à d'autres onglets.
les colonnes H,I,J,M se déverseront dans les 20 onglets portant le nom des équipes automatiquement dés lors de la mise à jour de l'onglet ''20172018''
Exemple Ligne 3: dans les onglets '' ACAjaccio'' et '' Niort '' nous aurons H3,I3,J3, et O3.
Jusque là, j'y arrive. par contre je ne comprends pas pourquoi les cellules colorées ne le sont plus une fois transférées dans les différents onglets.
Sub répartition()
Dim C As Range, Ligne As Long
For i = 2 To Sheets.Count
Sheets(i).[A: D].Clear
Next i
With Sheets("20172018")
For Each C In .Range("H3", .Cells(.Rows.Count, 8).End(xlUp))
If C.Value <> "" Then
With Sheets(C.Offset(, 1).Value)
Ligne = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
If .[A1] = "" Then Ligne = 1
C.Resize(, 3).Copy .Cells(Ligne, 1)
C.Resize(, 3).Copy
.Cells(Ligne, 1).PasteSpecial xlPasteValues
C.Offset(, 5).Copy .Cells(Ligne, 4)
C.Offset(, 5).Copy
.Cells(Ligne, 4).PasteSpecial xlPasteValues
End With
With Sheets(C.Offset(, 2).Value)
Ligne = .Cells(.Rows.Count, 1).End(xlUp).Row + 1
If .[A1] = "" Then Ligne = 1
C.Resize(, 3).Copy .Cells(Ligne, 1)
C.Resize(, 3).Copy
.Cells(Ligne, 1).PasteSpecial xlPasteValues
C.Offset(, 5).Copy .Cells(Ligne, 4)
C.Offset(, 5).Copy
.Cells(Ligne, 4).PasteSpecial xlPasteValues
End With
End If
Next C
End With
End Sub
Quelqu'un à une idée ?
Pièces jointes
Dernière édition: