Gestion des erreurs

Bonjour à tous,

Mon sujet concerne la gestion des erreurs, le code est le suivant:

On Error GoTo gestionErreurs
Dim nbfeuille As Integer
nbfeuille = Sheets.Count

For F = 1 To nbfeuille
' REINITIALISATION DES VARIABLES

somme = 0
somme_qte = 0
total_quantité = 0
valo_calculée = 0
Sheets(F).Activate
Cells.Find(What:="VL à calculer", After:=ActiveCell, LookIn:=xlValues _
        , LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
        MatchCase:=False, SearchFormat:=True).Activate
.
.(code pour calculer les VL)
.

gestionErreurs:

Next F

J'aimerai créer une macro, qui me permet de calculer des valeurs liquidatives, dans un fichier excel qui contient une soixantaine de feuilles.

J'ai comme repère là où je dois effectuer le calcul le terme suivant "VL à calculer", si la feuille ne contient pas cette phrase je voudrais qu'il passe à la feuille suivante.

le problème dans mon cas , c'est que cela marche pour la première feuille, il va donc à la deuxième feuille de mon classeur, mais la deuxième feuille de mon classeur ne contient toujours pas le terme "VL à calculer" et là j'ai le droit à cette erreur:

image

Auriez vous des suggestions pour pouvoir me sortir de ce problème ?

Vous remerciant par avance :)

Bonjour,

Voici un essai :

for each ws in worksheets
    somme = 0: somme_qte = 0: total_quantité = 0: valo_calculée = 0
    set r = ws.Cells.Find("VL à calculer", , xlValues, LookAt:=xlPart)
    if not r is nothing then
        addstart = r.address
        do
            'CODE POUR CALCULER LES VL
            set r = ws.Cells.Find("VL à calculer", r, xlValues, LookAt:=xlPart)
        loop while r.address <> addstart
    end if
next ws

Cdlt,

Rechercher des sujets similaires à "gestion erreurs"