VBA

Fermé
thby - 27 juin 2011 à 09:34
Ctesias Messages postés 724 Date d'inscription lundi 16 mai 2011 Statut Membre Dernière intervention 1 décembre 2011 - 27 juin 2011 à 09:49
Bonjour,

je voudrai remplacer #N/A par NON dans ma colonne excel, un code VBA est peut être utile
Merci

2 réponses

Ctesias Messages postés 724 Date d'inscription lundi 16 mai 2011 Statut Membre Dernière intervention 1 décembre 2011 36
27 juin 2011 à 09:37
For i = 1 to Range("A65536").End(xlUp).Row 'Remplacer le 1 par la premiere ligne à remplacer. Et le A de Range("A65535") par la lettre de la colonne souhaité
    If Cells(i,1).value = #N/A  then 'Remplacer le 1 par le numero de la colonne
        Cells(i,1).value = "NON" 'idem
    end if
Next


Voila
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
27 juin 2011 à 09:42
Salut,
A mon avis, on ne devrait jamais remplacer une formule qui renvoie une erreur par macro...
Ca n'est pas comme cela que l'on gère les erreurs sous excel...
0
Ctesias Messages postés 724 Date d'inscription lundi 16 mai 2011 Statut Membre Dernière intervention 1 décembre 2011 36
27 juin 2011 à 09:44
Voui, mais il a demandé un code VBA... La, il perdra ses formules. Le seul moyens de les garder, c'est comme ce que tu as fait en dessou, une formule excel.
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
27 juin 2011 à 09:48
Oui il a demandé un code VBA parce qu'il ne sait pas gérer une erreur excel. Si on lui montre tout de suite la "bonne" méthode c'est mieux n'est-il pas?
La, il perdra ses formules Ben oui et c'est pas ce qu'il y a de mieux pour son classeur.
Notre rôle ici est aussi d'aiguiller le demandeur vers une solution alternative lorsque celle ci s'avère "meilleure" pour le résultat escompté. Après, attendons, ta solution peux en effet solutionner son problème.
0
Ctesias Messages postés 724 Date d'inscription lundi 16 mai 2011 Statut Membre Dernière intervention 1 décembre 2011 36
Modifié par Ctesias le 27/06/2011 à 09:49
Il perdra ses formules, mais une fois le calcul fait, il n'ets peut-etre pas forcé de les garder....
0
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 2 743
27 juin 2011 à 09:41
Bonjour,
La gestion des erreurs sous excel ne devrait pas être réalisée comme tu le souhaites.
Ton erreur #N/A peux être gérée différemment. Il faut nous en dire davantage...
En cas d'erreur suite à une formule de calcul, on peux traiter l'erreur directement dans la formule.
Fais ce test :
Ouvre un classeur excel, en A1 écris 10, en A2 écris 0 et en A3 la formule :
=A1/A2
Tu as une erreur #DIV/0, logique!
Maintenant, remplace en A2 : 0 par : 1 et écris en A3
=SI(ESTERREUR(A1/A2);"NON";A1/A2)
remplace à nouveau A2 par 0 pour finir ce petit test...
Tu dis, si tu souhaites que l'on gère ton erreur directement dans la formule...
0