zone de texte excel

  • Initiateur de la discussion eric
  • Date de début
E

eric

Guest
Bonjour,

je cherche le code qui permet de vérifier sur une feuille excel l'existence d'une zone de texte nommée.

Par exemple, j'ai 3 feuilles excel, 2 seulement contiennent la zone de texte nommée "test1". Je souhaite pouvoir recopier un texte commun ("essai" par exemple) dans toutes les zones de texte nommées "test1" , voici le code que j'utilise :

For i = 1 To Sheets.Count
Sheets(i).Activate
ActiveSheet.Shapes("test1").Select
Selection.Characters.Text = "essai"

Le problème est que lorsque la zone de texte "test1" est inexistante dans une feuille, j'ai un message d'erreur "objet inexistant".
Comment faire ?
 
S

sousou

Guest
tu dois gérer le traitement d'erreur Excel
Par une instruction de type "On error goto"
Cette instruction déroutera le programme.
Attention à ne pas dérouter toutes les erreurs, donc penser à rétablir le traitement normal de l'erreur

exemple:
Sub test()
For i = 1 To Sheets.Count
Sheets(i).ActOn Error GoTo finivate
On Error GoTo fin
ActiveSheet.Shapes("test1").Select
On Error GoTo 0
Selection.Characters.Text = "essai"

fin:
MsgBox "pas de shape dans la feuille" & i
Next
End Sub
 
S

sousou

Guest
Bon, effectivement j'ai été un peu rapide dans mes copier coller
je reprend:


ca, c'est evidemment faut
Sheets(i).ActOn Error GoTo finivate

voilà ce qu'il faut lire:
sheets(i).activate
on error goto fin
ect...
 

Discussions similaires

Statistiques des forums

Discussions
312 175
Messages
2 085 953
Membres
103 058
dernier inscrit
florentLP