1 pièce(s) jointe(s)
Copier Coller Range - PB Type mismatch
Bonjour à tous,
J'ai un problème pour copier des données qui représentent le travail de certaines collaborateurs suivant les jours où ils étaient présents (variable par personne).
Quel que soit le code en question j'ai le même problème de type mismatch.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| Sub test1()
Dim a, i, j, k As Integer
a = WorksheetFunction.CountA(Sheets("Raw").Range("A:A"))
'Compte les lignes pour limiter le nombre de boucles
For i = 1 To a
If InStr(1, Sheets("Raw").Cells(i, 1), ",") <> 0 Then
'Je recherche les lignes, dans la colonne A, dans lesquelles
il y a une virgule parce que cela subdivise mes données par personne
(le nom est séparé du prénom par une virgule)
For j = 1 To 25
'je met une deuxième boucle dans la première qui recherche
la seconde virgule pour déterminer le Range des données de chaque personne
(qui sont variables)
If InStr(Sheets("Raw").Cells(i + j, 1), 1, ",") <> 0 Or IsEmpty(Sheets("Raw").Cells(i + j, 1)) = True Then
'Du coup j'essaie de copier les données dans une nouvelles feuille
en les espaçant. Du coup, je pourrais faire toutes mes formules dans cette nouvelle
feuille sans utiliser VBA.
Sheets("Raw").Range(Cells(i, 1), Cells(i + j - 1, 20)).Copy Destination:=Sheets("Sheet2").Range(Cells(k * 50 + 2, 1), Cells(k * 50 + 1 + j, 21))
'Mais ici j'ai une erreur de type mismatch.
k = k + 1
Exit For
End If
Next j
End If
Next i
End Sub |
Merci pour votre aide. Par contre pas trop compliqué, je suis pas au point niveau Array et autres joyeusetés.
NB: j'ai rajouté une image de l'onglet Raw.
Pièce jointe 395021