ça me dit erreur de syntaxe la:
If (Cells(20,NumCol).value <> "" Then
j'ai donc juste changé .value=0) then
et la ça me dit que next i ne doit pas l'etre, et quand je l'enlève c'est le drame...fin bref ça fou tout en l'air :p
Version imprimable
ça me dit erreur de syntaxe la:
If (Cells(20,NumCol).value <> "" Then
j'ai donc juste changé .value=0) then
et la ça me dit que next i ne doit pas l'etre, et quand je l'enlève c'est le drame...fin bref ça fou tout en l'air :p
Heuuu, désolé :oops:
Je n'ai pas testé le code
Il fallait lireLà, tu ne devrais plus avoir d'erreurCode:
1
2
3
4
5
6
7
8 Dim NumCol, DerLigne As Integer DerLigne = 565 For NumCol = 1 To 256 ' Balaie chaque cellule de la ligne 20 pour chaque colonne If Cells(20, NumCol).Value <> "" Then Range(Cells(20, NumCol), Cells(DerLigne, NumCol)).FillDown End If Next NumCol
eh je deviens même balèze ;)
j'ai remplacé la fin par next numcol ;) ça m'a planté excel......grrrrrrrrrrrrr
et j'ai rajouté la parenthèse la haut ;) toi tu l'as enlevé je vais essayé avec le nouveau code... ;)
excel tu plantes je te tue :)
bon ben je le tue....ça me fait planter excel.............
fin de tache et tout le toutim....
pourtant c'est pas une boucle sans fin je comprends pas
melodyyy, si tu mets
tu dois mettreCode:For i = .........
mais si tu metsCode:Next i
tu dois mettreCode:For NumCol....
A toi BrunoM45 ;)Code:Next Numcol
vi je dis pas le contraire, ça je sais (quand je suis pas blonde ;) ) mais son code me fait planter excel, rien ne s'effectue du coup....
je comprends pas
je finis un truc et j'essai ça de suite ;)
Inutile d'essayer, tu peux aller jusqu'à 257 :(
J'ai vérifié le code, il ne pose aucun problème chez moi.
Tu dis qu'il plante Excel. Qu'entends-tu par là ? Fermeture de l'appli ou arrêt de la macro ?
ah merde....j'ai même essayé 255 et niet...
quand je dis planter excel c'est t'as le sablier, pi ça tourne ça tourne....et ça s'arrete....et rien, et ensuite ctrl + alt+ sup et la tu vois ne répond pas ;)
voila....
Ça ne résoudra pas le pb mais tu es sur XP ?
Tu dois avoir autre chose qui fait planter le système.
Je pencherais plutôt vers un fichier vérolé
Essaie quelque chose :
Tu ouvres un nouveau classeur.
Tu copies les données de ta feuille (celle qui fait planter) et tu les colles dans une feuille de ton nouveau classeur (valeurs seules)
Ctrl(A) -> copier -> Collage spécial -> valeurs seules
Tu copies ton code dans un module tout neuf du nouveau classeur.
Tu fermes le fichier qui plante
Tu lances la macro
... et tu nous dis
c'est un peu chaud de faire ça j'ai des pages imbriqué les unes dans les autres....du coup le fichier fait quand même 3,63 Mo à lui tout seul ;)
et nan au bureau on est sous 2000 pro....
à l'ouest ? ouais je sais je sais...
nan rien à faire ça plante...même sur une autre feuille
Je ne t'ai pas dit une autre feuille mais un nouveau classeur.
As-tu transporté ton fichier "ailleurs" ? As-tu travaillé sur un autre micro ?
6 Mo, ça me paraît important même pour un grand nombre de feuilles. Le pb peut survenir si tu es passée d'une version d'Excel à une autre plus ancienne.
Tu dis
ouai ouais je sais, je l'ai fais aussi l'autre classeur...et ben rien...
Pas 6 Mo, juste 3,63 Mo...ok il est gros...
j'ai pas essayé sur un autre micro, mais mon ordi est neuf....de chez neuf ;) il a 1 mois et y'a que moi qui l'ai utilisé ;)
Pour la version antérieure je peux pas te dire, parce que je reprends le fichier de quelqu'un qui l'a déja fait...je crois que ça été fait sur la 2002, le fichier a 1 an et est remis constamment mis à jour...
Bref, selon toi...
Selon moi, voici ce que je ferais :
Je créerais un nouveau classeur, j'ajouterais le nombre de feuilles qu'il y a dans ton fichier, je les renommerais du nom de chaque feuille de ton fichier et je copierais les cellules ( Ctrl A) de chaque feuille de ton fichier dans les feuilles correspondantes du nouveau classeur.
Et encore, il n'est pas sûr que le problème soit réglé si le bug provient d'un "truc" qui se trouve dans une cellule.
Pour le savoir ? Tu vérifies ta macro après copie de chaque feuille.
J'ai eu le pb et j'ai fais ce que je viens de te dire, pour finir par m'apercevoir qu'une feuille présentait effectivement un pb sans jamais réussir définir lequel. En copiant les cellules des colonnes, colonne par colonne, j'ai réussi à trouver l'emplacement et à récupérer toutes les données sauf celle de la colonne incriminée que j'ai dû recopier à la main.
C'est du boulot mais c'est plus rapide que d'avoir à tout recommencer.
Mais je pense à une chose. Le fichier d'origine provient bien de quelque part.
Sur la machine d'origine, je vérifierais la version d'Excel.
Si la version est ultérieure à la tienne, fais un "enregistrer sous" ta version.
Le fait que ton micro soit neuf n'implique pas nécessairement que la version installée soit plus récente. J'ai encore Office 97 avec un micro neuf ;)
Bon courage
ouahhhhhhhhh mais 3,63 Mo de fichier j'en ai pour un certain temps...
je vais voir si elle en a pas un + récent parce que bon ça va me prendre au moins une aprem de faire ça...
Une aprem ? Ta question date d'hier 13h43... Si je compte bien, ça fait une journée ;)
ouai mais en + ;) une journée en + ;)
fin merci que même :) je reprendrais le message si jamais ça marche toujours pas
:salut:
Tu as qu'elle version d'Excel ?
Quel service pack ?
As tu fais un copié/collé du code que je t'avais mis ici http://www.developpez.net/forums/sho...0&postcount=22 ?
a+
quand je fais:
Quand j'ai une cellule avec des **** il me copie systématiquement le nom de la colonne jusqu'en bas ? que faire ?Code:
1
2
3
4
5
6
7
8 Dim NumCol, Derligne As Integer Derligne = 565 For NumCol = 36 To 50 If Cells(20, NumCol).Value <> "" Then Range(Cells(20, NumCol), Cells(Derligne, NumCol)).FillDown End If Next NumCol End Sub