Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#J5DtoekFHA.1444@TK2MSFTNGP10.phx.gbl...
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...
Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?
Merci
PointBonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...
Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?
Merci
Point
Bonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#J5DtoekFHA.1444@TK2MSFTNGP10.phx.gbl...
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...
Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?
Merci
PointBonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Re point;
Fais un copier-coller des procédures ci-dessous dans un module standard de
ton
classeur et sauvegarde le sous un autre nom pour faire le test.
Remplace le 1 de Private Const Col As Byte = 1 par le numéro de ta colonne
dans laquelle se trouvent VRAI ou FAUX
Exécute Menu Débogage / Compliler VBAProject
Tu ne dois pas avoir d'erreur signalée.
Menu Outils / Macro / Macros / Sélectionne et exécute CheckBoxesCreate.
Ensuite, vérifie le changement VRAI / FAUX lorque tu coches ou décoches
les checkboxes créés et si tout est bon, tu peux effacer la procédure
CheckBoxesCreate; sinon reviens à la charge sur le forum.
Private Const Col As Byte = 1
' Création Checkbox à gauche de VRAI ou FAUX
Sub CheckBoxesCreate()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, Col) <> "" Then
.CheckBoxes.Add(.Cells(i, Col).Left - 2 _
, .Cells(i, Col).Top - Col, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name _
& "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool(( _
.Cells(i, Col).Text = "VRAI")))
End If
Next i
End With
End Sub
Private Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, Col).Value = "VRAI"
Else
.Cells(nCbox, Col).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?Merci
PointBonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= "".CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Re point;
Fais un copier-coller des procédures ci-dessous dans un module standard de
ton
classeur et sauvegarde le sous un autre nom pour faire le test.
Remplace le 1 de Private Const Col As Byte = 1 par le numéro de ta colonne
dans laquelle se trouvent VRAI ou FAUX
Exécute Menu Débogage / Compliler VBAProject
Tu ne dois pas avoir d'erreur signalée.
Menu Outils / Macro / Macros / Sélectionne et exécute CheckBoxesCreate.
Ensuite, vérifie le changement VRAI / FAUX lorque tu coches ou décoches
les checkboxes créés et si tout est bon, tu peux effacer la procédure
CheckBoxesCreate; sinon reviens à la charge sur le forum.
Private Const Col As Byte = 1
' Création Checkbox à gauche de VRAI ou FAUX
Sub CheckBoxesCreate()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, Col) <> "" Then
.CheckBoxes.Add(.Cells(i, Col).Left - 2 _
, .Cells(i, Col).Top - Col, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name _
& "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool(( _
.Cells(i, Col).Text = "VRAI")))
End If
Next i
End With
End Sub
Private Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, Col).Value = "VRAI"
Else
.Cells(nCbox, Col).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#g8dM0fkFHA.3300@TK2MSFTNGP15.phx.gbl...
Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...
Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?
Merci
Point
Bonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#J5DtoekFHA.1444@TK2MSFTNGP10.phx.gbl...
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Re point;
Fais un copier-coller des procédures ci-dessous dans un module standard de
ton
classeur et sauvegarde le sous un autre nom pour faire le test.
Remplace le 1 de Private Const Col As Byte = 1 par le numéro de ta colonne
dans laquelle se trouvent VRAI ou FAUX
Exécute Menu Débogage / Compliler VBAProject
Tu ne dois pas avoir d'erreur signalée.
Menu Outils / Macro / Macros / Sélectionne et exécute CheckBoxesCreate.
Ensuite, vérifie le changement VRAI / FAUX lorque tu coches ou décoches
les checkboxes créés et si tout est bon, tu peux effacer la procédure
CheckBoxesCreate; sinon reviens à la charge sur le forum.
Private Const Col As Byte = 1
' Création Checkbox à gauche de VRAI ou FAUX
Sub CheckBoxesCreate()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, Col) <> "" Then
.CheckBoxes.Add(.Cells(i, Col).Left - 2 _
, .Cells(i, Col).Top - Col, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name _
& "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool(( _
.Cells(i, Col).Text = "VRAI")))
End If
Next i
End With
End Sub
Private Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, Col).Value = "VRAI"
Else
.Cells(nCbox, Col).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?Merci
PointBonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= "".CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text = "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Merci Michel,
j'ai bien suivi ta procédure, mais le laancement de la macro n'a créé
qu'une seule case à cocher (premiere ligne vrai) et cette case ne
controle pas la valeur vrai faux de la ligne.
Ai-j fait une erreur?? Merci de ton aide en tout cas.
pointRe point;
Fais un copier-coller des procédures ci-dessous dans un module standard
de
ton
classeur et sauvegarde le sous un autre nom pour faire le test.
Remplace le 1 de Private Const Col As Byte = 1 par le numéro de ta
colonne
dans laquelle se trouvent VRAI ou FAUX
Exécute Menu Débogage / Compliler VBAProject
Tu ne dois pas avoir d'erreur signalée.
Menu Outils / Macro / Macros / Sélectionne et exécute CheckBoxesCreate.
Ensuite, vérifie le changement VRAI / FAUX lorque tu coches ou décoches
les checkboxes créés et si tout est bon, tu peux effacer la procédure
CheckBoxesCreate; sinon reviens à la charge sur le forum.
Private Const Col As Byte = 1
' Création Checkbox à gauche de VRAI ou FAUX
Sub CheckBoxesCreate()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, Col) <> "" Then
.CheckBoxes.Add(.Cells(i, Col).Left - 2 _
, .Cells(i, Col).Top - Col, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name _
& "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool(( _
.Cells(i, Col).Text = "VRAI")))
End If
Next i
End With
End Sub
Private Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, Col).Value = "VRAI"
Else
.Cells(nCbox, Col).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?Merci
PointBonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= "".CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par
une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Merci Michel,
j'ai bien suivi ta procédure, mais le laancement de la macro n'a créé
qu'une seule case à cocher (premiere ligne vrai) et cette case ne
controle pas la valeur vrai faux de la ligne.
Ai-j fait une erreur?? Merci de ton aide en tout cas.
point
Re point;
Fais un copier-coller des procédures ci-dessous dans un module standard
de
ton
classeur et sauvegarde le sous un autre nom pour faire le test.
Remplace le 1 de Private Const Col As Byte = 1 par le numéro de ta
colonne
dans laquelle se trouvent VRAI ou FAUX
Exécute Menu Débogage / Compliler VBAProject
Tu ne dois pas avoir d'erreur signalée.
Menu Outils / Macro / Macros / Sélectionne et exécute CheckBoxesCreate.
Ensuite, vérifie le changement VRAI / FAUX lorque tu coches ou décoches
les checkboxes créés et si tout est bon, tu peux effacer la procédure
CheckBoxesCreate; sinon reviens à la charge sur le forum.
Private Const Col As Byte = 1
' Création Checkbox à gauche de VRAI ou FAUX
Sub CheckBoxesCreate()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, Col) <> "" Then
.CheckBoxes.Add(.Cells(i, Col).Left - 2 _
, .Cells(i, Col).Top - Col, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name _
& "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool(( _
.Cells(i, Col).Text = "VRAI")))
End If
Next i
End With
End Sub
Private Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, Col).Value = "VRAI"
Else
.Cells(nCbox, Col).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#g8dM0fkFHA.3300@TK2MSFTNGP15.phx.gbl...
Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...
Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?
Merci
Point
Bonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#J5DtoekFHA.1444@TK2MSFTNGP10.phx.gbl...
Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par
une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac
Merci Michel,
j'ai bien suivi ta procédure, mais le laancement de la macro n'a créé
qu'une seule case à cocher (premiere ligne vrai) et cette case ne
controle pas la valeur vrai faux de la ligne.
Ai-j fait une erreur?? Merci de ton aide en tout cas.
pointRe point;
Fais un copier-coller des procédures ci-dessous dans un module standard
de
ton
classeur et sauvegarde le sous un autre nom pour faire le test.
Remplace le 1 de Private Const Col As Byte = 1 par le numéro de ta
colonne
dans laquelle se trouvent VRAI ou FAUX
Exécute Menu Débogage / Compliler VBAProject
Tu ne dois pas avoir d'erreur signalée.
Menu Outils / Macro / Macros / Sélectionne et exécute CheckBoxesCreate.
Ensuite, vérifie le changement VRAI / FAUX lorque tu coches ou décoches
les checkboxes créés et si tout est bon, tu peux effacer la procédure
CheckBoxesCreate; sinon reviens à la charge sur le forum.
Private Const Col As Byte = 1
' Création Checkbox à gauche de VRAI ou FAUX
Sub CheckBoxesCreate()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, Col) <> "" Then
.CheckBoxes.Add(.Cells(i, Col).Left - 2 _
, .Cells(i, Col).Top - Col, l, h).Text = ""
.CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name _
& "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool(( _
.Cells(i, Col).Text = "VRAI")))
End If
Next i
End With
End Sub
Private Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, Col).Value = "VRAI"
Else
.Cells(nCbox, Col).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Merci de ton aide, mais je suis pas tres tres fort en VBA, j'ai donc
collé tout ça dans VBA, et lorsque j'envoi les macros pour la premiere,
il me dit : objet requi et pour la deuxième il y a une croix rouge et
400...Que dois-je faire? Et quels sont les éléments à modifier pour que ça
tourne?Merci
PointBonjour point;
' Création Checkbox en colonne 1 à gauche de la mention VRAI / FAUX
Sub CheckBoxesInit()
Dim lRow&, i&, l#, h#
Application.ScreenUpdating = False
With ActiveSheet
.Columns(1).HorizontalAlignment = xlRight
l = (.Cells(1, 2).Left - Cells(1, 1).Left) - 2
h = (.Cells(2, 1).Top - Cells(1, 1).Top) - 2
lRow = .Cells(.Rows.Count, 1).End(xlUp).Row
For i = 1 To lRow
If .Cells(i, 1) <> "" Then
.CheckBoxes.Add(.Cells(i, 1).Left - 2, .Cells(i, 1).Top - 1, l, h).Text
= "".CheckBoxes(i).Display3DShading = True
.CheckBoxes(i).Name = "CBox" & i
.CheckBoxes(i).OnAction = ThisWorkbook.Name & "!CheckBoxAction"
.CheckBoxes("CBox" & i).Value = Abs(CBool((.Cells(i, 1).Text "VRAI")))
End If
Next i
End With
End Sub
Sub CheckBoxAction()
Dim nCbox&
With ActiveSheet
nCbox = Val(Mid(.CheckBoxes(Application.Caller).Name, 5))
If .CheckBoxes(Application.Caller).Value = 1 Then
.Cells(nCbox, 1).Value = "VRAI"
Else
.Cells(nCbox, 1).Value = "FAUX"
End If
End With
End Sub
MP
"point" <"raissac(at)msn(point)com"> a écrit dans le message de news:
#Bonjour,
dans une feuille de 600 ligne, j'ai une colone Vrai/Faux. Je voudrais
que pour chaque ligne, la valeur de cette colone, soit controlée par
une
case à cocher.
Je dois donc inserer 600 cases à cocher, les aligner, et pour chaque
donner la cellule qu'elle controle, y a til moyen de faire tout ça en
une seule opération ?
En espérant avoir été clair
Merci par avance de votre aide
The Raissac