Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
la
dernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
au
même résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=Change
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans , « »je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,
1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
message
d'erreur
Quelque chose a du m'échapper !
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
faut
secontenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" a écrit dans le message de
news:C33EA241.9FE1%Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur
("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
maisà
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solutionun
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBobBonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retourà
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.RBonsoir à toutes et à tous
Alors que la réponse de semblait m'avoir pleinement satisfait,
voilàt-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellules
proposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerted'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
unevaleur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
descellules supérieures vers les cellules inférieures et quand une
valeur
n'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ou
plusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBobLe 17/10/07 20:30, dans C33C214F.A2F0%, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #, «
»
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
nonvalides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
les
autres"
http://jacxl.free.fr"SaxBob" a écrit dans le message de news:
C33C13AA.A2DC%Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissentpour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractère
limitatifde la validation. Je voudrais donc que l'utilisateur puisse
entrer
d'autresdonnées que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
serait
pas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.
Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
la
dernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
au
même résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=Change
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans Oum9hztEIHA.5228@TK2MSFTNGP05.phx.gbl, « j@c »
je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,
1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
message
d'erreur
Quelque chose a du m'échapper !
J@C
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
uwFVXdpEIHA.5208@TK2MSFTNGP04.phx.gbl...
Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
faut
se
contenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de
news:C33EA241.9FE1%SaxBob@nowhere.eu...
Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur
("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
mais
à
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solution
un
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBob
Bonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retour
à
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
Bonsoir à toutes et à tous
Alors que la réponse de j@c semblait m'avoir pleinement satisfait,
voilà
t-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellules
proposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerte
d'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
une
valeur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
des
cellules supérieures vers les cellules inférieures et quand une
valeur
n'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ou
plusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBob
Le 17/10/07 20:30, dans C33C214F.A2F0%SaxBob@nowhere.eu, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #DDwPkOEIHA.3712@TK2MSFTNGP02.phx.gbl, «
j@c »
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
non
valides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
les
autres"
j@c
http://jacxl.free.fr
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de news:
C33C13AA.A2DC%SaxBob@nowhere.eu...
Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissent
pour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractère
limitatif
de la validation. Je voudrais donc que l'utilisateur puisse
entrer
d'autres
données que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
serait
pas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.
Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
la
dernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
au
même résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=Change
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans , « »je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,
1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
message
d'erreur
Quelque chose a du m'échapper !
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
faut
secontenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" a écrit dans le message de
news:C33EA241.9FE1%Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur
("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
maisà
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solutionun
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBobBonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retourà
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.RBonsoir à toutes et à tous
Alors que la réponse de semblait m'avoir pleinement satisfait,
voilàt-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellules
proposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerted'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
unevaleur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
descellules supérieures vers les cellules inférieures et quand une
valeur
n'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ou
plusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBobLe 17/10/07 20:30, dans C33C214F.A2F0%, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #, «
»
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
nonvalides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
les
autres"
http://jacxl.free.fr"SaxBob" a écrit dans le message de news:
C33C13AA.A2DC%Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissentpour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractère
limitatifde la validation. Je voudrais donc que l'utilisateur puisse
entrer
d'autresdonnées que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
serait
pas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.
Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
je ne comprends pas le problème
Si je mets une validation par liste dans l'une des cellules concernée par la
recopie incrémentée incriminée, la recopie se fait sans pb et la validation
disparait simplement, remplacée par le contenu de la cellule qui est au
dessus.
Aucun message d'erreur !
Encore une fois, si tu veux garder ta liste de validation, utilise une copie
simple avec collage spécial valeurs.
En outre, l'utilisation à outrance de offset et de autofill rend la lecture
de ton code très difficile, ce qui ne doit pas te simplifier la vie pour les
corrections !
http://jacxl.free.fr
"SaxBob" a écrit dans le message de news:
C3418B45.A0D8%Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
ladernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
aumême résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=ChangeActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans , « »je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
messaged'erreur
Quelque chose a du m'échapper !
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
fautsecontenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" a écrit dans le message de
news:C33EA241.9FE1%Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
maisà
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solutionun
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBobBonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retourà
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.RBonsoir à toutes et à tous
Alors que la réponse de semblait m'avoir pleinement satisfait,
voilàt-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellulesproposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerted'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
unevaleur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
descellules supérieures vers les cellules inférieures et quand une
valeurn'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ouplusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBobLe 17/10/07 20:30, dans C33C214F.A2F0%, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #, «
»
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
nonvalides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
lesautres"
http://jacxl.free.fr"SaxBob" a écrit dans le message de news:
C33C13AA.A2DC%Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissentpour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractèrelimitatifde la validation. Je voudrais donc que l'utilisateur puisse
entrerd'autresdonnées que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
seraitpas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
je ne comprends pas le problème
Si je mets une validation par liste dans l'une des cellules concernée par la
recopie incrémentée incriminée, la recopie se fait sans pb et la validation
disparait simplement, remplacée par le contenu de la cellule qui est au
dessus.
Aucun message d'erreur !
Encore une fois, si tu veux garder ta liste de validation, utilise une copie
simple avec collage spécial valeurs.
En outre, l'utilisation à outrance de offset et de autofill rend la lecture
de ton code très difficile, ce qui ne doit pas te simplifier la vie pour les
corrections !
j@c
http://jacxl.free.fr
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de news:
C3418B45.A0D8%SaxBob@nowhere.eu...
Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
la
dernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
au
même résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=Change
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans Oum9hztEIHA.5228@TK2MSFTNGP05.phx.gbl, « j@c »
je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,
1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
message
d'erreur
Quelque chose a du m'échapper !
J@C
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
uwFVXdpEIHA.5208@TK2MSFTNGP04.phx.gbl...
Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
faut
se
contenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de
news:C33EA241.9FE1%SaxBob@nowhere.eu...
Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur
("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
mais
à
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solution
un
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBob
Bonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retour
à
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
Bonsoir à toutes et à tous
Alors que la réponse de j@c semblait m'avoir pleinement satisfait,
voilà
t-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellules
proposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerte
d'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
une
valeur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
des
cellules supérieures vers les cellules inférieures et quand une
valeur
n'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ou
plusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBob
Le 17/10/07 20:30, dans C33C214F.A2F0%SaxBob@nowhere.eu, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #DDwPkOEIHA.3712@TK2MSFTNGP02.phx.gbl, «
j@c »
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
non
valides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
les
autres"
j@c
http://jacxl.free.fr
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de news:
C33C13AA.A2DC%SaxBob@nowhere.eu...
Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissent
pour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractère
limitatif
de la validation. Je voudrais donc que l'utilisateur puisse
entrer
d'autres
données que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
serait
pas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.
Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
je ne comprends pas le problème
Si je mets une validation par liste dans l'une des cellules concernée par la
recopie incrémentée incriminée, la recopie se fait sans pb et la validation
disparait simplement, remplacée par le contenu de la cellule qui est au
dessus.
Aucun message d'erreur !
Encore une fois, si tu veux garder ta liste de validation, utilise une copie
simple avec collage spécial valeurs.
En outre, l'utilisation à outrance de offset et de autofill rend la lecture
de ton code très difficile, ce qui ne doit pas te simplifier la vie pour les
corrections !
http://jacxl.free.fr
"SaxBob" a écrit dans le message de news:
C3418B45.A0D8%Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
ladernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
aumême résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=ChangeActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans , « »je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
messaged'erreur
Quelque chose a du m'échapper !
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
fautsecontenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" a écrit dans le message de
news:C33EA241.9FE1%Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
maisà
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solutionun
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBobBonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retourà
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.RBonsoir à toutes et à tous
Alors que la réponse de semblait m'avoir pleinement satisfait,
voilàt-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellulesproposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerted'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
unevaleur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
descellules supérieures vers les cellules inférieures et quand une
valeurn'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ouplusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBobLe 17/10/07 20:30, dans C33C214F.A2F0%, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #, «
»
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
nonvalides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
lesautres"
http://jacxl.free.fr"SaxBob" a écrit dans le message de news:
C33C13AA.A2DC%Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissentpour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractèrelimitatifde la validation. Je voudrais donc que l'utilisateur puisse
entrerd'autresdonnées que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
seraitpas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
Bonsoir à tous et à en particulier.
Un peu tard pour que je me lance dans un grand discours mais je suis arrivé
à faire fonctionner la macro suivant tes conseils. Je la posterai ici dès
que possible.
A+
SaxBob
Le 22/10/07 6:41, dans , « »
a écrit :je ne comprends pas le problème
Si je mets une validation par liste dans l'une des cellules concernée par la
recopie incrémentée incriminée, la recopie se fait sans pb et la validation
disparait simplement, remplacée par le contenu de la cellule qui est au
dessus.
Aucun message d'erreur !
Encore une fois, si tu veux garder ta liste de validation, utilise une copie
simple avec collage spécial valeurs.
En outre, l'utilisation à outrance de offset et de autofill rend la lecture
de ton code très difficile, ce qui ne doit pas te simplifier la vie pour les
corrections !
http://jacxl.free.fr
"SaxBob" a écrit dans le message de news:
C3418B45.A0D8%Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
ladernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
aumême résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=ChangeActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans , « »je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
messaged'erreur
Quelque chose a du m'échapper !
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
fautsecontenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" a écrit dans le message de
news:C33EA241.9FE1%Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
maisà
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solutionun
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBobBonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retourà
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.RBonsoir à toutes et à tous
Alors que la réponse de semblait m'avoir pleinement satisfait,
voilàt-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellulesproposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerted'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
unevaleur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
descellules supérieures vers les cellules inférieures et quand une
valeurn'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ouplusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBobLe 17/10/07 20:30, dans C33C214F.A2F0%, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #, «
»
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
nonvalides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
lesautres"
http://jacxl.free.fr"SaxBob" a écrit dans le message de news:
C33C13AA.A2DC%Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissentpour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractèrelimitatifde la validation. Je voudrais donc que l'utilisateur puisse
entrerd'autresdonnées que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
seraitpas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
Bonsoir à tous et à j@c en particulier.
Un peu tard pour que je me lance dans un grand discours mais je suis arrivé
à faire fonctionner la macro suivant tes conseils. Je la posterai ici dès
que possible.
A+
SaxBob
Le 22/10/07 6:41, dans O2PmNXGFIHA.1208@TK2MSFTNGP05.phx.gbl, « j@c »
<bidon@bidon.fr> a écrit :
je ne comprends pas le problème
Si je mets une validation par liste dans l'une des cellules concernée par la
recopie incrémentée incriminée, la recopie se fait sans pb et la validation
disparait simplement, remplacée par le contenu de la cellule qui est au
dessus.
Aucun message d'erreur !
Encore une fois, si tu veux garder ta liste de validation, utilise une copie
simple avec collage spécial valeurs.
En outre, l'utilisation à outrance de offset et de autofill rend la lecture
de ton code très difficile, ce qui ne doit pas te simplifier la vie pour les
corrections !
j@c
http://jacxl.free.fr
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de news:
C3418B45.A0D8%SaxBob@nowhere.eu...
Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
la
dernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
au
même résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=Change
ActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans Oum9hztEIHA.5228@TK2MSFTNGP05.phx.gbl, « j@c »
je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,
1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
message
d'erreur
Quelque chose a du m'échapper !
J@C
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:
uwFVXdpEIHA.5208@TK2MSFTNGP04.phx.gbl...
Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
faut
se
contenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de
news:C33EA241.9FE1%SaxBob@nowhere.eu...
Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur
("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
mais
à
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solution
un
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBob
Bonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retour
à
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
Bonsoir à toutes et à tous
Alors que la réponse de j@c semblait m'avoir pleinement satisfait,
voilà
t-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellules
proposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerte
d'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
une
valeur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
des
cellules supérieures vers les cellules inférieures et quand une
valeur
n'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ou
plusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBob
Le 17/10/07 20:30, dans C33C214F.A2F0%SaxBob@nowhere.eu, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #DDwPkOEIHA.3712@TK2MSFTNGP02.phx.gbl, «
j@c »
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
non
valides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
les
autres"
j@c
http://jacxl.free.fr
"SaxBob" <SaxBob@nowhere.eu> a écrit dans le message de news:
C33C13AA.A2DC%SaxBob@nowhere.eu...
Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissent
pour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractère
limitatif
de la validation. Je voudrais donc que l'utilisateur puisse
entrer
d'autres
données que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
serait
pas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.
Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob
Bonsoir à tous et à en particulier.
Un peu tard pour que je me lance dans un grand discours mais je suis arrivé
à faire fonctionner la macro suivant tes conseils. Je la posterai ici dès
que possible.
A+
SaxBob
Le 22/10/07 6:41, dans , « »
a écrit :je ne comprends pas le problème
Si je mets une validation par liste dans l'une des cellules concernée par la
recopie incrémentée incriminée, la recopie se fait sans pb et la validation
disparait simplement, remplacée par le contenu de la cellule qui est au
dessus.
Aucun message d'erreur !
Encore une fois, si tu veux garder ta liste de validation, utilise une copie
simple avec collage spécial valeurs.
En outre, l'utilisation à outrance de offset et de autofill rend la lecture
de ton code très difficile, ce qui ne doit pas te simplifier la vie pour les
corrections !
http://jacxl.free.fr
"SaxBob" a écrit dans le message de news:
C3418B45.A0D8%Hello à tous
Après un petit tour à la montagne me revoilou.
Voici le libellé de la macro qui provoque l'erreur:
Sub Suivante£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
ActiveCell.Range("A1:B1").AutoFill
Destination:¬tiveCell.Range("A1:B2"), Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1:E1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:E2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 5).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 1).Value = Suiv
ActiveCell.Offset(0, 2).Range("A1:D1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:D2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 2).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 2).Range("A1:B1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:B2"),
Type:=xlFillCopy
ActiveCell.Offset(0, 3).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
Multi = 0
End Sub
J'ai séparé la ligne qui pose problème. Elle recopie d'un coup quatre
cellules vers le bas avec xlFillCopy. J'ai séparé les trois premières de
ladernière (la cellule avec la liste qui merdoye). J'arrive malheureusement
aumême résultat.
J'ai une autre macro remplissant les mêmes cellules:
Sub Changement£()
If Controle1 = True Then Exit Sub
Range("A5").End(xlDown).Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=ChangeActiveCell.Offset(0, 1).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, 9).Range("A1").Select
ActiveCell.Resize(1, 4).Value = "1000 Hz"
ActiveCell.Offset(-1, 4).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(0, 7).Range("A1").Select
Selection.AutoFill Destination:¬tiveCell.Range("A1:A2"),
Type:=xlFillSeries
ActiveCell.Offset(1, -21).Range("A1").Select
End Sub
La ligne "ActiveCell.Resize(1, 4).Value = "1000 Hz"" qui concerne entre
autres la cellule maudite fonctionne sans problème.
Quelqu'un aurait-il une idée??
SaxBob
Le 20/10/07 7:48, dans , « »je ne comprends pas bien, si je fais un simple copier coller par
Cells(2,1).Copy Cells(1, 1) je n'ai aucun message (mais comme je colle tout, je
perds la liste de validation), et si je fais un collage spécial avec
PasteSpecial(xlvalue), ça m'a l'air de marcher très bien sans aucun
messaged'erreur
Quelque chose a du m'échapper !
http://jacxl.free.fr
"Philippe.R" <AS_rauphil_chez_wanadoo.fr> a écrit dans le message de
news:Bonsoir,
Pas trop d'idée autre à proposer ; quelquefois, faute de smoking, il
fautsecontenter d'une veste !
:o)))
En plus, ça tombe bien, on viens d'en ramasser une !
;o)))
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.R
"SaxBob" a écrit dans le message de
news:C33EA241.9FE1%Bonsoir à tous
Last but not liste (dans la cellule) :-)
J'ai introduit les deux lignes Application.DisplayAlertsúlse et
Application.DisplayAlerts=True en début et en fin de macro
.Malheureusement
la macro s'interrompt en cours d'exécution avec le même message
d'erreur("Un utilisateur a limité les valeurs pouvant être entrées dans une ou
plusieurs cellules affectées par cette action") et les boutons fin et
debug.
Une autre macro de remplissage ne faisant pas appel au copier-coller
maisà
la fonction Activecell.Value fonctionne parfaitement.
Faut-il dans ce cas que je récupère la valeur de ma cellule dans une
variable pour la refixer dans la ligne suivante? Je trouve cette
solutionun
peu lourde et inélégante mais si je suis obligé d'en passer par là...
Merci pour tout conseil.
SaxBobBonsoir,
Un petit application.DisplayAlertsúlse avant l'ordre de copie et
retourà
true après ne ferait pas l'affaire ?
--
http://www.excelabo.net/mpfe/connexion.php
http://dj.joss.free.fr/trombine.htm
Avec plaisir
Philippe.RBonsoir à toutes et à tous
Alors que la réponse de semblait m'avoir pleinement satisfait,
voilàt-y
pas qu'un os se met dans le pâté.
Rappel du problème: Je voudrais une liste déroulante dans des
cellulesproposant un panel de valeurs sans pour cela que cette liste soit
exhaustive. Je passe donc par une validation en choisissant dans
"alerted'erreur" le style informations et en décochant la case "tapez le
message
d'erreur qui s'affichera...".
Jusque là tout va bien et j'ai effectivement la possibilité d'entrer
unevaleur qui n'est pas dans la liste. Malheureusement, je me sers de
macros
qui remplissent les lignes en effectuant des copier-coller à partir
descellules supérieures vers les cellules inférieures et quand une
valeurn'est
pas dans la liste, j'obtiens alors le message d'erreur:
"Un utilisateur a limité les valeurs pouvant être entrées dans une
ouplusieurs cellules affectées par cette action".
Alors je pose la question: Que faire?
SaxBobLe 17/10/07 20:30, dans C33C214F.A2F0%, « SaxBob »
Alléluia!!!
Tout baigne! Encore merci.
SaxBob
Le 17/10/07 20:11, dans #, «
»
données / validation / options listes /
dans onglet "alerte d'erreur", décocher la case "quand des données
nonvalides sont tapées"
on n'est pas obligé de mettre la liste dans des cellules, on peut
l'inscrire
directement dans "source" sous la forme "zaza";"toto";"lulu";"et
lesautres"
http://jacxl.free.fr"SaxBob" a écrit dans le message de news:
C33C13AA.A2DC%Bonsoir à tous
Voilà. J'ai déjà dans plusieurs cellules des listes qui
apparaissentpour
effectuer un choix. Je passe pour cela par le menu validation.
J'aimerais
faire la même chose dans d'autres cellules mais sans le
caractèrelimitatifde la validation. Je voudrais donc que l'utilisateur puisse
entrerd'autresdonnées que ce qui est proposé sans avoir le message d'erreur:
" La valeur entrée ne se trouve pas dans la liste des valeurs
requises".
Suis-je obligé de créer un tableau? Si c'est le cas, il ne
seraitpas
dans
la même feuille que les cellules où je veux entrer les données.
Comment
l'appeler? De plus il serait sous la forme 6 colonnes x 4
lignes.Peut-on
faire des listes comprenant plusieurs lignes ET plusieurs
colonnes?
Merci
SaxBob