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

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
 

Robert

XLDnaute Barbatruc
Repose en paix
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 ?
 

NeMoS

XLDnaute Junior
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
 

Robert

XLDnaute Barbatruc
Repose en paix
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

  • MeMos_v01.xls
    28.5 KB · Affichages: 33

NeMoS

XLDnaute Junior
[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 !!:rolleyes:

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:

Discussions similaires

Réponses
2
Affichages
205

Statistiques des forums

Discussions
312 836
Messages
2 092 655
Membres
105 479
dernier inscrit
chaussadas.renaud