VBA - problème de la gestion du 0 dans une cellule

  • Initiateur de la discussion Initiateur de la discussion NeMoS
  • 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 !

NeMoS

XLDnaute Junior
Bonjour,

Bon, je vais essayer d'expliquer mon problème:
- j'ai x fichiers excel (sans macros) qui contiennent trois onglets. Dans chaque onglet, la première colonne A est une liste de noms.
- pour éviter à l'utilisateur de recopier trois fois sa liste de nom, dans les onglets 2 et 3 il y a un simple = [Ax=onglet1!Ax]
- donc quand il n'y a pas de nom, les cellules des onglets 2 et 3 affichent un 0 (ce qui est sommes toutes tout à fait normal

- Maintenant j'ai un autre fichier qui est identique aux fichiers précédents mais qui contient une macro. Cette macro permet d'ouvrir tous les fichier x et de copier toutes les données. Je récupère ainsi dans un seul fichier la liste des noms [entre autres] de tous les autres fichiers.

Mon problème:
ma macro regarde dans chaque fichier la valeur de la cellule Ax: si elle est non nulle, elle copie la ligne et ainsi de suite.
Mon problème c'est que quand la macro voit le 0 elle considère que c'est non nul et donc je me retrouve avec mes données dispersées sur un nombre incroyable de ligne avec plein de 0

J'ai essayé de dire à ma macro que si la valeur est 0 elle fait comme si c'était nul (en utilisant range.value, puis range.formulaR1C1)
J'ai essayé en n'affichant pas les 0 dans la feuille excel
Rien à faire, la macro s'entête....

Je peux vous mettre le fichier en pièce attachée mais c'est assez difficile car il faudrait tous les fichiers pour voir ce que ça donne....

Si quelqu'un peut m'aider ce serait super, si vous voulez la macro dites le moi

Par avance merci !

Gwen
 
Re : VBA - problème de la gestion du 0 dans une cellule

Bonjour Gwen (MeMos), bonjour le forum,

Je peux vous mettre le fichier en pièce attachée mais c'est assez difficile car il faudrait tous les fichiers pour voir ce que ça donne....
Rien ne t'empêchait de mettre le code de la macro (en utilisant les balises de code de préférence)... Non ?
 
Re : VBA - problème de la gestion du 0 dans une cellule

re-bonjour,

Voici le bout de code :
Code:
For i = 3 To nblignetotal
    If wb.Worksheets("PROCESS KNOWLEDGE").Range("A" & i).Value <> "" Then
    wb.Sheets("PROCESS KNOWLEDGE").Range("a" & i).EntireRow.Copy
    ThisWorkbook.Sheets("PROCESS KNOWLEDGE").Activate
    Sheets("PROCESS KNOWLEDGE").Range("A" & j).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    j = j + 1
    End If
Next


J'espère que c'est suffisant...j'ai juste mis le bout qui copy/paste
Juste pour info wb est le fichier x qu'on ouvre et qu'on copie
Donc c'est au niveau de la première ligne que cela se passe (if..) ==> je ne sais pas comment lui dire qu'il doit copier si c'est non nul ou égal à 0.
J'ai essayé avec un "or wb.Worksheets("PROCESS KNOWLEDGE").Range("A" & i).Value = 0" (et ="0" et formularR1C1 etc)...
Je n'y arrive pas....

Merci encore !!

Gwen/NeMoS
 
Re : VBA - problème de la gestion du 0 dans une cellule

Bonjour Gwen, bonjour le forum,

Dans la pièce jointe lance, la Macro1 à partir de l'onglet Feui2. Comme tu peux le constater la condition <>0 fonctionne. Ça donnerait cela, adapté à ton fichier :
Code:
 For i = 3 To nblignetotal
    If wb.Worksheets("PROCESS KNOWLEDGE").Range("A" & i).Value <> 0 Then
    wb.Sheets("PROCESS KNOWLEDGE").Range("a" & i).EntireRow.Copy
    ThisWorkbook.Sheets("PROCESS KNOWLEDGE").Activate
    Sheets("PROCESS KNOWLEDGE").Range("A" & j).PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    j = j + 1
    End If
Next
Le fichier :
 

Pièces jointes

[Resolu] VBA - problème de la gestion du 0 dans une cellule

Merci !!

Cela à l'air de fonctionner et je me demande pourquoi je n'y avais pas pensé avant !!🙄

Il y a quand même un truc bizarre qu'il faut que je vérifie ==> ça me cache une partie des lignes, mais je ne sais pas si c'est une mauvaise manip de ma part ou pas...

Encore merci pour votre aide.

Gwen
 
Dernière édition:
- 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
4
Affichages
144
Retour