Mise en forme avec macro sous excel (Résolu) - VB/VBA/VBS - Programmation
Marsh Posté le 17-04-2007 à 11:24:34
tu as oublié les guillemets "" dans tes range ^^
Marsh Posté le 17-04-2007 à 11:28:15
c'est à dire que j'aurais du faire
Range("Cells(1, 1)", "Cells(ligne, 8)" ).Select
Range("Cells(ligne, 8)" ).Activate
?????????????
Marsh Posté le 17-04-2007 à 11:37:01
non, mais dans ton range de départ
plus sérieusement, fais un msgbox ou un debug.print de ta ligne pour savoir quel nombre est retourné, voir ce qui cloche.
Marsh Posté le 17-04-2007 à 11:40:22
cela n'a rien change j'ai toujours le meme message d'erreur
Marsh Posté le 17-04-2007 à 11:41:24
non il compte le bon nombre
car j'avais fait un msgbox pour sortir le chiffre est controle.
Marsh Posté le 17-04-2007 à 11:42:07
qu'a tu dans ta msgbox apres ces lignes stp ?
Dim ligne As Integer
ligne = Cells.SpecialCells(xlCellTypeLastCell).Row
msgbox ligne
Marsh Posté le 17-04-2007 à 11:51:23
et avec ca ?
Range(Cells(ligne, 8),Cells(ligne, 8)).Activate
chez moi ca tourne
Marsh Posté le 17-04-2007 à 11:55:42
Range(cells(X,Y)) ne fonctionne pas.
Range fonctionne pour une plage d'au moins 2 cellules.
pour une seule cellule : cells(X,Y) suffit.
Par ailleurs les .select et .activate sont inutiles.
Si tu veux envoie ton code, je te le nettoie en t'expliquant.
Marsh Posté le 17-04-2007 à 11:56:53
YES YES YES
merci a toi ca fonctionne
C trop cool
merci merci merci
Marsh Posté le 17-04-2007 à 11:22:20
Bonjour,
je cherche à faire de la mise en forme dans un fichier excel.
Pour cela j'ai souhaité utiliser une macro car c'est un travail répétitif (tous les 2 jours)
et que je souhaite gagner du temps.
Mon fichier excel peut contenir entre 1500 et 5000 lignes suivants les jours.
J'arrive à faire ma mise en forme sur un nombre de ligne donnée mais celle-ci changeant à chaque fois,
j'ai voulu mettre une variable calculée;
C'est à dire le nombre de ligne que je suis capable de calculer grace aux 2 lignes suivantes:
Dim ligne As Integer
ligne = Cells.SpecialCells(xlCellTypeLastCell).Row
ensuite j'ai voulue remplacer mes lignes qui était:
Range("A1:H5000).Select
Range(H5000).Activate
par
Range(Cells(1, 1), Cells(ligne, 8)).Select
Range(Cells(ligne, 8)).Activate
Mais voilà cela ne veut pas fonctionner j'ai le message suivant :
Erreur d'exécution '1004': (numero de ma ligne d'erreur)
La méthode 'Range' del'objet '_Global' a échoué
et je ne vois pas vraiment où est le problème n'ayant fait que remplacé des écriture par d'autres equivalentes (enfin je crois)
Merci pour l'aide qui me sera apporter
Message édité par aculy le 17-04-2007 à 11:57:29