OVH Cloud OVH Cloud

suis-je victime d'une fatwa?

19 réponses
Avatar
jps
bonjour m'sieurs dames
qu'ai-je encore fait au bon Dieu pour que mes versets ci-dessous soient ceux
de Satan?
et pourquoi que cette proc ne me supprime que les cellules vertes (émeraude,
certes) de la première ligne rencontrée par la boucle?
messieurs les jurés, mon client n'a pourtant rien fait et je vous remercie
de lui accorder non solum votre clémence sed etiam votre soutien...
jps

Sub test()
Dim c As Range
For Each c In Range("a2:H141")
If c.Interior.ColorIndex = 35 Then c.Delete
Next c
End Sub

9 réponses

1 2
Avatar
Daniel.M
Bonjour,

Cette réflexion est parfaitement valable lorqu'il s'agit d'éliminer des
lignes contenant des doublons.
Mais ici, on ne détruit pas la cel, puisque l'on efface simplement son
contenu.



Si notre auguste maître avait marqué .ClearContents au lieu de .Delete, je
serais d'accord avec toi. Et peut-être est-ce véritablement ce qu'il voudrait
faire (mais je ne m'aviserais jamais à le reprendre puisque ses supplices
d'initiation me reviennent encore en mémoire et m'imposent le respect, voire le
silence...) Quand à .Delete, il efface non seulement le contenu mais détruit bel
et bien la cellule.


J'en prends pour preuve que lorsque tu delete(s) A2, ni A1 ni A3
ne changent de place.


Mets du contenu dans les cellules A1:B3 et fais Range("A2").Delete et tu vas
voir que ça change les cellules de place (avec les mêmes conséquences que celles
que tu décrivais par les lignes déjà analysées).

Salutations amicales,

Daniel M.

Avatar
jps
bonjour daniel
merci pour ce complément d'information...je confirme que je veux bien
Deleter et non pas ClearerLesContents....
voili voilou
jps (qui apprécie ton respect.... mais n'en attendait pas moins!)

"Daniel.M" a écrit dans le message de
news:OCkS$
Bonjour,

Cette réflexion est parfaitement valable lorqu'il s'agit d'éliminer des
lignes contenant des doublons.
Mais ici, on ne détruit pas la cel, puisque l'on efface simplement son
contenu.



Si notre auguste maître avait marqué .ClearContents au lieu de .Delete, je
serais d'accord avec toi. Et peut-être est-ce véritablement ce qu'il
voudrait

faire (mais je ne m'aviserais jamais à le reprendre puisque ses supplices
d'initiation me reviennent encore en mémoire et m'imposent le respect,
voire le

silence...) Quand à .Delete, il efface non seulement le contenu mais
détruit bel

et bien la cellule.


J'en prends pour preuve que lorsque tu delete(s) A2, ni A1 ni A3
ne changent de place.


Mets du contenu dans les cellules A1:B3 et fais Range("A2").Delete et tu
vas

voir que ça change les cellules de place (avec les mêmes conséquences que
celles

que tu décrivais par les lignes déjà analysées).

Salutations amicales,

Daniel M.





Avatar
Jacquouille
Bonsoir Dan
Mille millions de mille sabords.
j'ai encore confondu delete made in VBA et la touche delete. C'est aussi
con que la valeur vrai ou faux avec VBA.
P'tain, mais quand changeront-ils vers la simplicité et la normalité?
Merci pour cette mise au point.
PS Notre JPS qui roucoule de plaisir à s'entendre appeler "Maître". -))
Au plaisir.

--
Bien amicalmement,
Vivement conseillés:
http://www.excelabo.net
http://jacxl.free.fr/mpfe/trombino.html
http://dj.joss.free.fr/netiquet.htm
Jacquouille.

"Daniel.M" a écrit dans le message de
news: OCkS$
Bonjour,

Cette réflexion est parfaitement valable lorqu'il s'agit d'éliminer des
lignes contenant des doublons.
Mais ici, on ne détruit pas la cel, puisque l'on efface simplement son
contenu.



Si notre auguste maître avait marqué .ClearContents au lieu de .Delete, je
serais d'accord avec toi. Et peut-être est-ce véritablement ce qu'il
voudrait
faire (mais je ne m'aviserais jamais à le reprendre puisque ses supplices
d'initiation me reviennent encore en mémoire et m'imposent le respect,
voire le
silence...) Quand à .Delete, il efface non seulement le contenu mais
détruit bel
et bien la cellule.


J'en prends pour preuve que lorsque tu delete(s) A2, ni A1 ni A3
ne changent de place.


Mets du contenu dans les cellules A1:B3 et fais Range("A2").Delete et tu
vas
voir que ça change les cellules de place (avec les mêmes conséquences que
celles
que tu décrivais par les lignes déjà analysées).

Salutations amicales,

Daniel M.





Avatar
Modeste
;o)))
Jacquouille wrote:
Notre JPS qui roucoule de plaisir à s'entendre appeler "Maître".


Je ne sais quel renard l'a appelé "Maître" ???
mais de mémoire cela s'adressait à un corbeau, et les corbeaux ne roucoulent
pas !!!
force est-elle de se résigner à le prendre pour un pigeon ????
à moins de le qualifier de chameau :
Ahmed l'azerghii parlant à son méhara : Avance !! Avance !!
et la mouvise bête elle roucoule ...
;o)))

Avatar
jps
:-))))))))))
jps

"Modeste" a écrit dans le message de
news:
;o)))
Jacquouille wrote:
Notre JPS qui roucoule de plaisir à s'entendre appeler "Maître".


Je ne sais quel renard l'a appelé "Maître" ???
mais de mémoire cela s'adressait à un corbeau, et les corbeaux ne
roucoulent

pas !!!
force est-elle de se résigner à le prendre pour un pigeon ????
à moins de le qualifier de chameau :
Ahmed l'azerghii parlant à son méhara : Avance !! Avance !!
et la mouvise bête elle roucoule ...
;o)))





Avatar
jps
bonjour michel, bonjour daniel M (toi qui dors encore...ou déjà) et très
subsidiairement, bonjour GD qui doit faire prendre deux gros cailloux pour
faire boire son méhara)
je suis déçu, voire dépité et bien loin de roucouler, même si je n'avance
pas beaucoup....
vos deux procs marchent du feu de Dieu dans XL 2002 et ne veulent pas en
moudre dans XL 97...
aurais-je blasphémer à ce point?
du coup, je ne me sens plus "maître" du tout, surtout de la situation...
si vous subodorez quelquechose de louche là-dessous, vos avis me seront
précieux
à suivre
jps

"michelxld" a écrit dans le message de
news:
bonjour à tous

Jps , tu peux tester

Sub test()
Dim i As Integer, j As Integer

For j = 141 To 2 Step -1
For i = 8 To 1 Step -1
If Cells(j, i).Interior.ColorIndex = 35 Then Cells(j, i).Delete
Next i
Next j
End Sub


bon week end
michel

"jps" wrote:

bonjour m'sieurs dames
qu'ai-je encore fait au bon Dieu pour que mes versets ci-dessous soient
ceux


de Satan?
et pourquoi que cette proc ne me supprime que les cellules vertes
(émeraude,


certes) de la première ligne rencontrée par la boucle?
messieurs les jurés, mon client n'a pourtant rien fait et je vous
remercie


de lui accorder non solum votre clémence sed etiam votre soutien...
jps

Sub test()
Dim c As Range
For Each c In Range("a2:H141")
If c.Interior.ColorIndex = 35 Then c.Delete
Next c
End Sub








Avatar
Frédo P
Bonjour JPS
Je viens de faire l'essais avec ces deux proc ;une pour colorier les
cellules l'autre pour les effacer. Chez moi ça fonctionne.
Public Sub color_cell()
Dim i As Byte
For i = 1 To 20
Cells(Int(20 * Rnd + 1), Int(20 * Rnd + 1)).Interior.ColorIndex = 35
Next i
End Sub

Sub test()
Dim i As Integer, j As Integer
For j = 20 To 1 Step -1
For i = 20 To 1 Step -1
If Cells(i, j).Interior.ColorIndex = 35 Then Cells(i, j).Delete
Next i
Next j
End Sub

"jps" a écrit dans le message de
news:
Avatar
jps
bonjour frédo
merci et tu as raison, ta proc fonctionne bien...sru XL 2002 ; je vais aussi
l'essayer sur XL 97 mais je crains fort que, tout comme celles de michet et
de daniel M, elle ne fonctionne pas....
à demain le follow up, je pense
encore merci
bonne fin de semaine (j'ai déjà dit follow up, alors là j'ai eu peur de la
riposte québécoise)
jps

"Frédo P" a écrit dans le message de
news:
Bonjour JPS
Je viens de faire l'essais avec ces deux proc ;une pour colorier les
cellules l'autre pour les effacer. Chez moi ça fonctionne.
Public Sub color_cell()
Dim i As Byte
For i = 1 To 20
Cells(Int(20 * Rnd + 1), Int(20 * Rnd + 1)).Interior.ColorIndex = 35
Next i
End Sub

Sub test()
Dim i As Integer, j As Integer
For j = 20 To 1 Step -1
For i = 20 To 1 Step -1
If Cells(i, j).Interior.ColorIndex = 35 Then Cells(i, j).Delete
Next i
Next j
End Sub

"jps" a écrit dans le message de
news:




Avatar
isabelle
hello mon ange,

pour xl97 essaie en remplacant
c.Delete
par
Range(c.Address).Delete

isabelle

bonjour m'sieurs dames
qu'ai-je encore fait au bon Dieu pour que mes versets ci-dessous soient ceux
de Satan?
et pourquoi que cette proc ne me supprime que les cellules vertes (émeraude,
certes) de la première ligne rencontrée par la boucle?
messieurs les jurés, mon client n'a pourtant rien fait et je vous remercie
de lui accorder non solum votre clémence sed etiam votre soutien...
jps

Sub test()
Dim c As Range
For Each c In Range("a2:H141")
If c.Interior.ColorIndex = 35 Then c.Delete
Next c
End Sub





1 2