[RESOLU]Probleme Macro de remplacement

  • Initiateur de la discussion Initiateur de la discussion Yaniv
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Yaniv

XLDnaute Junior
Bonjour a tous je dispose en fait de la plutot simple macro suivante

Code:
Sub testNulll()
Dim i As Long
With Sheets("Exotiques")
 For i = 1 To 10735
  If Cells(i, 2).Value = "NULL" Then
  Cells(i, 2).Value = Cells(i, 2).Value
   [U]Else: Cells(i, 2).Value = Cells(i, 2).Value + 1323[/U]   End If
   Next i
   End With
End Sub

dc qui dans ma colonne B , me garde les valeurs "NULL" et me remplacent le chiffre x par x+1323
Toutefois j ai un bug lors de l execution au niveau la ligne souligne et il semble que ce soit le "+1323" qui ccause probleme je ne sai pas pourquoi
 
Dernière édition:
Re : Probleme Macro de remplacement

Bonjour,

peut être tester si la cellule possède une valeur numérique :
Code:
If IsNumeric(Cells(i, 2).Value) Then Cells(i, 2).Value = Cells(i, 2).Value + 1323

sans plus de détails, difficile d'en dire plus...

bon après midi
@+
 
Re : Probleme Macro de remplacement

BOnjour a tous merci de votre aide , effectivement j ai oublie de mettre isnumeric donc forcement l erreur venait du fait que les cases contenant "NULL" entrainaient lerreur . je m excuse de cette erreur d inattention et merci encore de vos reponse et de votre aide
bonne journee
 
Re : [RESOLU]Probleme Macro de remplacement

effectivement , c pour cela que je ne comprenais pas l erreur moi meme car a part des "NULL" et des valeurs il n y a rien d autres
g modifie mon code de la maniere suivante avec l aide de pierrot et ca marche parfaitement
Code:
Sub testNulll()
Dim i As Long
With Sheets("Exotiques")
 For i = Range("B10735").End(xlUp).Row To 1 Step -1
  If IsNumeric(Cells(i, 2).Value) Then
  Cells(i, 2).Value = Cells(i, 2).Value + 1323
 Else: Cells(i, 2).Value = "NULL"
   End If
   Next i
   End With
End Sub
 
Re : [RESOLU]Probleme Macro de remplacement

Re,

A noter, tu utilises un bloc "with" mais tu ne fais pas précéder les instructions s'y rapportant d'un point...

Code:
Dim i As Long
With Sheets("Exotiques")
    For i = .Range("B10735").End(xlUp).Row To 1 Step -1
        If IsNumeric(.Cells(i, 2).Value) Then
            .Cells(i, 2).Value = .Cells(i, 2).Value + 1323
        Else
            .Cells(i, 2).Value = "NULL"
        End If
    Next i
End With

donc le code s'applique sur la feuille active ou s'il est placé dans un module de feuille, dans cettre dernière... euille
 
Re : [RESOLU]Probleme Macro de remplacement

ah je ne connaissais pas cette regle merci de m en informer c est interessant a savoir pour la suite effectivement le with sans les points ne me servent a rien si j ai bien compris , la macro est juste appliquee dans la feuille active .
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
698
Réponses
4
Affichages
563
Réponses
8
Affichages
645
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
3
Affichages
833
Réponses
2
Affichages
666
Retour