INFO : Faire planter Excel... [Résolu]

us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 15:30 - Dernière réponse : us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention
- 2 févr. 2010 à 22:22
Bonjour,

Voici un petit code pour faire planter excel 2003, au moins...

Sub Macro1()
    
    Range("D8").AddComment.Shape.Delete
    
End Sub


Il reste à activer la macro, puis à cliquer sur D8... et boum... Excel rencontre un problème, patati patata...

Est-ce que c'est la même chose pour les autres versions ?!

Amicalement,
Us.
Afficher la suite 

18 réponses

Répondre au sujet
cs_Jack 14010 Messages postés samedi 29 décembre 2001Date d'inscription 28 août 2015 Dernière intervention - 2 févr. 2010 à 15:42
+3
Utile
lol
Perso, il m'a fallu cliquer.
Et ça marche aussi pour B3 (lol)

Sous Office 2007, l'erreur ne se produit pas.

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_Jack
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 17:57
+3
Utile
Bonjour,
J'ai également Excel 2007 :
Ni plantage, ni erreur ... sauf si, bien évidemment, un commentaire, même vide, est déjà là (et c'est alors le addcomments qui provoque bien sûr l'erreur)
Maintenant : attention : lorsque l'on travaille longtemps sur un projet sans enregistrer et que la pile des erreurs successives dénoncées est grande, Excel a la mauvaise habitude de disjoncter purement et simplement (tu es peut-être dans ce cas et tu avais peut-être déjà un commentaire et alors l'erreur provoquée par le addcomments a peut-être été la dernière goutte ayant fait déborder le vase)

PS ; Juste pour satisfaire ma curiosité (je suis curieux) : quel est le but de .AddComment.Shape.Delete ?

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 18:39
+3
Utile
Ah, mais non !
Excel se débrouille comme un chef, dans cette affaire de fous ...
Tu vas voir :
1) pas de message d'erreur
2) il signale (petite coche rouge dans la cellule) qu'elle contient maintenant un commentaire
3) le menu contextuel de la cellule ne propose pas l'effacement de ce commentaire (comme en présence d'un commentaire, habituellement)
4) Il propose par contre une option "Afficher/masquer le commentaire" ... Si on la choisit, on a droit à une boîte de dialogue nous disant qu'il n'y a pas de commentaoire ...

La "totale", quoi !

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 18:47
+3
Utile
Et pour compléter le tableau :
Il dit qu'il n'y a aucun commentaire (comme exposé), mais si l'on clique sur "modifier le commentaire" ===>> Va bene ===>> il accepte


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 19:45
+3
Utile
Oui, mais sur quelle version ?
Excel 2007.
Version 12.0
A-t-elle quelque-chose de spécial qui m'aurait échappé ?
Lui échappe-t-il une certaine incongruité ?
Manaarf ! ===>> je ne fais que constater et rapporter mes constatations

____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 19:56
+3
Utile
Et j(ajoute que sur ma version, intellisense (abrutisense ?) n'hésite pas à proposer chacun des verbes après cjhaque point dans, par exemple :
Range("D8").AddComment.Shape.Application.ActiveCell.Areas.Count


Voilà qui ne veut bien sûr rien dire, mais abrutisense propose tout et n'importe quoi à qui veut s'amuser
Et, bien évidemment, on a droit (ouf) à un message d'erreur (il était temps !) à l'exécution ....(vachement explicite quant à la propriété fautive : " utilisation incorrecte vde la propriété " !) ==>> tout est alors pour le mieux dans le monde de abrutisense
____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 21:43
+3
Utile
Hé ! Us_30,

T'as pas compris que je me moquais tout au long des bévues de Micromachin ?
Relis et tu verras toute l'ironie à l'égard de cette équipe (celle de Mister Bill) ... pas à ton égard ...
Les "réparations" qui semblent avoir été faites sur ma version ne sont pas plus "soignées" et "bien pensées" que ce qui existait (je te crois sur parole) avant.
Quant à abrutisense, il semble que l'on se soit contenté d' "aligner" des "propositions" toujours les mêmes en fonction du dernier verbe précédent un signe . (et voilà .... pourquoi l'adjectif utilisé : abrutisense)


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 21:58
+3
Utile
Tu me rasures.

Et tout (de cet abrutisense) a ainsi été "bâti" !
l'IDE ne dénoncerait (en mode création) aucune erreur si l'on écrivait par exemple :
Code Visual Basic :

MsgBox Range(Cells("A1")).Rows.Address



Rows serait proposé après le 1er ., Address serait proposé après le 2ème .
Il faudra attendre l'exécution pour constater une erreur pourtant fondamentale


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
ucfoutu 18039 Messages postés lundi 7 décembre 2009Date d'inscriptionContributeurStatut 11 avril 2018 Dernière intervention - 2 févr. 2010 à 22:11
+3
Utile
Et la chose peut devenir comique !
regarde ce qui se passe à chaque frappe d'un signe . dans ce :
MsgBox Range("A1").Application.ActiveCell.Application.ActiveCell.Address

et le résultat, ....


____________________
Vous aimez Codes-Sources ? Il vous aide ? Cliquez ici pour l'aider à continuer
Cliquer sur "Réponse acceptée" en bas d'une solution adéquate est
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de ucfoutu
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 15:34
0
Utile
ou attendre qlq secondes au lieu de cliquer... trop fort !
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 15:46
0
Utile
et comment réagit excel 2007... donne-t-il une erreur dans le script ?

Amicalement,
Us.
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 18:23
0
Utile
Non, non... Excel 2007 ne retourne peut-être pas d'erreur, mais Excel 2003, si. Confirmé par jack.

... et, non la cellule ne possède pas de commentaire avant, sinon il y a un traitement normal de l'erreur par l'arrêt du script. J'ai testé à vide. et aussi qlq autres propriétés ensuite, et on obtient seulement un traitement normal de l'erreur... C'est juste avec "delete" que cela bug grave...

Sinon le sens de :
.AddComment.Shape.Delete
veut dire rien du tout ! plus absurde, on peut pôs !

... néanmoins on peut le former avec les propositions du bandeau "d'intellisense"...

... et comme cela ne veut rien dire, c'est pour ça que je reste étonné que Excel 2007 ne dit rien, d'ailleurs... Cela veut dire qu'il exécute un code idiot sans bug (donc sans arrêt). Bref, Excel2007, considère qu'un code qui mériterait un arrêt du script (comme normalement c'est le cas) ne veut même pas la peine de s'arrêter !? (pourquoi s'arrêter si le programmateur code comme un pied ?... je poursuis... Génial Excel2007 )

Amicalement,
Us.
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 18:54
0
Utile
Oui, mais sur quelle version ?

Ensuite cela reste anormal... puisqu'il n'exécute pas les propriétés (absconses ici)...

Amicalement,
Us.
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 21:35
0
Utile
t'enflammes pôs...

Donc, oui un truc t'as échappé... la version où je constate le bug, c'est 2003... Voilà, pour répondre aux propos précédents...

Ensuite, bien sur, on peut bâtir un certain nombre de propriété incongrue avec "abrutisense", mais en principe doit être détectée comme des erreurs lors de l'exécution... mais la proposition que je relate passe à travers du comportement normal, pour conduire à un plantage sans appel d'Excel ( 2003, donc)... Visiblement pour 2007, Microsoft à eu vent de se bug, où alors à modifier le traitement des erreurs fatales, pour les traiter sans arrêt brutal... à la manière de TRY de VB.NET, en quelque sorte... En ce sens, il sera plus difficile de faire un plantage des versions 2007, que les précédentes... C'est tant mieux d'une certaine manière, mais bon...

Reste à savoir pour les anciennes versions, quelles sont les résultats...

Amicalement,
Us.
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 21:50
0
Utile
j'ai bien compris ton ironie... t'inquiètes pas...
t'enflammes pôs...

j'ironise sur ton ton combatif : "Et j'ajoute...", plutôt que sur MicroSoft...

Amicalement,
Us.
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 22:13
0
Utile
hum... abrutisense est surtout là pour éviter (ou presque) d'écrire, pas pour aider à programmer...

Quelle est la différence entre ...
MsgBox Range("A1").Rows.Address
MsgBox Range("A1").Address



Amicalement,
Us.
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 22:14
0
Utile
oupss... en même temps...
Commenter la réponse de us_30
us_30 2117 Messages postés lundi 11 avril 2005Date d'inscription 14 mars 2016 Dernière intervention - 2 févr. 2010 à 22:22
0
Utile
et pis, on peut aussi programmer une action inutile :
Range("A1").AddComment.Delete

toujours très utile...

Amicalement,
Us.
Commenter la réponse de us_30

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.