Bonjour et soir... ou matin...
Je souhaite copier une plage de cellules (en ligne) de la feuil1 sur d'autres feuilles du classeur via une listbox
Si les cellules, recevant la copie, sont de blanches, alors pas de problèmes. En revanche, si au moins une seule cellule recevant la copie des cellules sélectionnées en Feuil1 est colorées (différentes couleurs peuvent être présentes , sauf le blanc), alors
MsgBox "Une ou toute la plage est déjà occupée!"
Si vous avez une idée.. merci à tous!
Lio
Je souhaite copier une plage de cellules (en ligne) de la feuil1 sur d'autres feuilles du classeur via une listbox
Si les cellules, recevant la copie, sont de blanches, alors pas de problèmes. En revanche, si au moins une seule cellule recevant la copie des cellules sélectionnées en Feuil1 est colorées (différentes couleurs peuvent être présentes , sauf le blanc), alors
MsgBox "Une ou toute la plage est déjà occupée!"
Code:
Dim I as Single
Dim NbCellule as Single
Dim Selecoul as Range
I = ActiveCell.Row 'I prend la valeur du num de ligne de la cel active
NbCellule = Selection.Columns.Count 'compte le nombre de cellules
With ListBox1 'Ds la lisbox s'affiche les feuilles à sélectionner pour la copie
For Selecsem = 0 To .ListCount - 1 'Sélection des feuilles
If ListBox1.ListIndex = -1 Then Exit Sub 'Si aucune feuille n'est sélectionnée
If .Selected(Selecsem) = True Then 'Si il y a une sélection
Sheets(.List(Selecsem)).Select
Plage.Copy Range(Plage.Address) 'Copie de la plage sélectionnée
Range(Plage.Address).Interior.ColorIndex = Range("B" & I).Interior.ColorIndex
'Copie de la couleur
'c'est là où je n'arrive pas à trouver la solution...
Set selecoul = Range(Cells(I, 4), Cells(I, 27))
If Range(Plage.Address).Interior.ColorIndex <> Intersect(selcoul, Selection).Interior.ColorIndex Then
MsgBox "La plage superpose une plage existante!"
Exit Sub
End If
Si vous avez une idée.. merci à tous!
Lio