Case à cocher pour passer à une autre feuille
zazi
-
Raymond PENTIER Messages postés 71826 Statut Contributeur -
Raymond PENTIER Messages postés 71826 Statut Contributeur -
Bonjour,
Je voudrais que à la fin de chaque feuilles excel, cocher une case pour confirmer que le "contrôle" a été fait, afin d'activé ma feuille suivante.
Pouvez-vous me venir en aide svp ?
Merci.
Je voudrais que à la fin de chaque feuilles excel, cocher une case pour confirmer que le "contrôle" a été fait, afin d'activé ma feuille suivante.
Pouvez-vous me venir en aide svp ?
Merci.
A voir également:
- Case à cocher pour passer à une autre feuille
- Passer de qwerty a azerty - Guide
- Passer a windows 10 - Accueil - Mise à jour
- Case à cocher libre office - Forum LibreOffice / OpenOffice
- Supprimer case à cocher excel ✓ - Forum Excel
- Raccourci clavier case à cocher - Forum Clavier
3 réponses
Bonjour,
Est-ce que tu peux préciser ? La fin de chaque feuille ? Ou exactement ?
Daniel
Est-ce que tu peux préciser ? La fin de chaque feuille ? Ou exactement ?
Daniel
Zazi
Avoir une feuille, et cocher OK la case en bas à droit, qui nous ferais activer une feuille suivante.
Bonjour,
Places cette macro dans un module standard :
Et exécutes-le :
Il place une case à cocher en bas de chaque feuille (avec sa macro)
Places cette macro dans un module standard :
Option Explicit
Sub AjoutCheckBoxs()
Const n$ = "chkValidation" 'Nom de la case à cocher
Dim w As Worksheet 'Feuille
Dim o As OLEObject 'OLE case à cocher
Dim s As Shape 'Forme
Dim c As Range 'Cellule
Dim m As String 'Texte de la macro
Dim d As Integer 'Début de la macro
Dim x As Integer 'nombre de lignes
' Nettoyer chaque feuille :
For Each w In Worksheets
With w
' - supprimer le checkbox s'il existe
For Each s In .Shapes
If s.Name = "chkValidation" Then s.Delete
Next s
' - supprimer la macro _Click() du checkbox
With ThisWorkbook.VBProject.VBComponents(.CodeName).CodeModule
On Error Resume Next
d = .ProcStartLine(n & "_Click", 0)
x = .ProcCountLines(n & "_Click", 0)
.DeleteLines d, x
On Error GoTo 0
End With
End With
Next w
' Définir la macro
m = ""
m = m & "Sub " & n & "_Click()" & vbCrLf
m = m & " With Me" & vbCrLf
m = m & " If ." & n & ".value Then" & vbCrLf
m = m & " If .Index < Worksheets.Count Then" & vbCrLf
m = m & " Worksheets(.Index + 1).Activate" & vbCrLf
m = m & " Else" & vbCrLf
m = m & " MsgBox ""Dernière feuille""" & vbCrLf
m = m & " End If" & vbCrLf
m = m & " End If" & vbCrLf
m = m & " End With" & vbCrLf
m = m & "End Sub"
' Sur chaque feuille :
For Each w In Worksheets
With w
' - ajouter le chekbox à la fin de la feuille
Set c = .Cells(Val(Split(.UsedRange.Address & "$A$1", "$")(4)) + 2, "A")
Set o = .OLEObjects.Add(ClassType:="Forms.CheckBox.1")
With o
.Name = n
.Left = 15
.Top = c.Top
.Width = 60
.Height = 18
.ShapeRange.Fill.ForeColor.SchemeColor = 64
With .Object
.Caption = "Validation"
.BackColor = RGB(192, 255, 192)
End With
End With
End With
' - ajouter la macro _Click du CheckBox
With ThisWorkbook.VBProject.VBComponents(w.CodeName).CodeModule
x = .CountOfLines + 1
.InsertLines x, m
End With
Next w
End Sub
Et exécutes-le :
Il place une case à cocher en bas de chaque feuille (avec sa macro)