[Catégorie modifiée VB6 --> VBA] Excel

Signaler
Messages postés
24
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
4 avril 2013
-
Messages postés
420
Date d'inscription
vendredi 17 novembre 2006
Statut
Membre
Dernière intervention
15 juillet 2014
-
Bonjour,

Voila je rencontre un problème très certainement bateau mais vu mes connaissances ça représente une montagne ^^.

Sur une zone bien délimité d'une feuille Excel ( de la cellule A11 a la cellule AN 71, il y a donc un balayage et ligne et en colonne) je souhaiterai appliquer une macro qui vérifie la valeur de chacune des cellules présentent dans l'espace indiqué et lui attribue une autre valeur (exemple si AN 41 > 0 lui donner la valeur 0).

J'ai essayé tout types de bricolages , car je pense pas qu'on puisse appeler ça du code, j'en appel donc a vos compétences ^^

Merci d'avance

4 réponses

Messages postés
27
Date d'inscription
lundi 19 février 2007
Statut
Membre
Dernière intervention
3 août 2014

Salut tout le monde

faute d'un code de ta part moi je te propose cette ébauche qu'il faut l'adapter a ton cas :
Dim val1 As String, val2 As String
val1 = spécifier la valeur
val2 = spécifier la valeur
Range("A1:An100").Select
Selection.Replace What:=val1, Replacement:=val2, LookAt:=xlPart, SearchOrder _
:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  

Bonne Chance
FOU DES CODES
Messages postés
24
Date d'inscription
mardi 14 avril 2009
Statut
Membre
Dernière intervention
4 avril 2013

Plop, merci pour ta réponse et effectivement j'aurai du fournir un code aussi simple soit il car la je crois pas que ça réponde a ce que je souhaite.

Imaginons que sur une feuille je souhaite changer la valeur d'un bon nombres de cellules
Actuellement de manière temporaire j'espère, j'utilise un truc très simple

Sheets("blabla").Range("A1").Value = ""


L'opération ayant pour but de réinitialiser la valeur de la cellule.
Donc je me demandé comment faire un automatisme sur un nombre de colonne et de ligne définie car je n'y arrive pas.
Messages postés
420
Date d'inscription
vendredi 17 novembre 2006
Statut
Membre
Dernière intervention
15 juillet 2014
5
Bonjour,

Peut-être :
Dim Plage As Range, Cellule As Range
Set Plage = Sheets("blala").Cells("A1:B10")
For Each Cellule In Plage.Cells
    If Cellule.Value > 0 Then
        Cellule.Value = ""
    End If
Next
Messages postés
420
Date d'inscription
vendredi 17 novembre 2006
Statut
Membre
Dernière intervention
15 juillet 2014
5
Correction :

Dim Plage As Range, Cellule As Range
Set Plage = Sheets("blala").Range("A1:B10")
For Each Cellule In Plage.Cells
    If Cellule.Value > 0 Then
        Cellule.Value = ""
    End If
Next


Désolé