Bonjour
Dans cette macro comment faire pour que la barre d'outil s'ouvre uniquement pour un classeur ?
D'autre part comment faire pour que la macro s'applique à d'autre onglet du classeur et pas uniquement la zone [planning]
Merci
Sub auto_open()
On Error Resume Next
CommandBars.Add ("BarreColoriage")
CommandBars("BarreColoriage").Visible = True
For i = 1 To [couleurs].Count
Set bouton = CommandBars("BarreColoriage").Controls.Add(Type:=msoControlButton)
bouton.Style = msoButtonCaption
bouton.Tag = i
bouton.OnAction = "'Coloriage """ & bouton.Tag & """'"
bouton.Caption = Range("couleurs")(i)
Next i
End Sub
Sub Coloriage(p)
For Each C In Selection
If Not Intersect([planning], C) Is Nothing Then
C.Value = Range("couleurs")(p).Value
C.Interior.ColorIndex = Range("couleurs")(p).Interior.ColorIndex
'Range("couleurs")(p).Copy C
End If
Next C
End Sub
Sub auto_close()
On Error Resume Next
Application.CommandBars("BarreColoriage").Delete
End Sub
Dans cette macro comment faire pour que la barre d'outil s'ouvre uniquement pour un classeur ?
D'autre part comment faire pour que la macro s'applique à d'autre onglet du classeur et pas uniquement la zone [planning]
Merci
Sub auto_open()
On Error Resume Next
CommandBars.Add ("BarreColoriage")
CommandBars("BarreColoriage").Visible = True
For i = 1 To [couleurs].Count
Set bouton = CommandBars("BarreColoriage").Controls.Add(Type:=msoControlButton)
bouton.Style = msoButtonCaption
bouton.Tag = i
bouton.OnAction = "'Coloriage """ & bouton.Tag & """'"
bouton.Caption = Range("couleurs")(i)
Next i
End Sub
Sub Coloriage(p)
For Each C In Selection
If Not Intersect([planning], C) Is Nothing Then
C.Value = Range("couleurs")(p).Value
C.Interior.ColorIndex = Range("couleurs")(p).Interior.ColorIndex
'Range("couleurs")(p).Copy C
End If
Next C
End Sub
Sub auto_close()
On Error Resume Next
Application.CommandBars("BarreColoriage").Delete
End Sub