> Tous les forums > Forum Bureautique
 l'instruction cells(1,3) rejetée dans une macroSujet résolu
Ajouter un message à la discussion
Page : [1] 
Page 1 sur 1
rogerone
  Posté le 03/04/2013 @ 17:29 
Aller en bas de la page 
Petit astucien

Bonjour à tous

j'écris une macro recherchant dans un fichier trié alphabétiquement les noms commençant par 3 lettres définies.

Pour ce faire j'ouvre mon fichier.

je sélectionne la feuille et je parcours mon fichier de 3 à la fin du fichier

j'écris donc cells(3,1).select

et la macro me signale une erreur 1004 (erreur définie par l'application ou l'objet)

parfois j'obtiens une message avec une croix rouge sur fond blanc avec le nombre 400!!!!!

quelle erreur ai-je donc commise?

voici mon code de la macro écrite dans un fichier perso.xls

Sub compoequipe()

'cette macro au départ du fichier alpha joueurs éditera la composition des equipes pour une semaine

Workbooks.Open Filename:="e:\tenexcel\lf2013.xlsm" Windows("lf2013.xlsm").Activate

i = 3 Z = 10 trois = InputBox("donnez les 3 premières lettres du joueur") Sheets("lfhalp").Select

Do

Cells(i, 1).Select nom = Cells(i, 1).Value

choix = Left(nom, 3)

If choix = trois Then

Cells(10, Z).Select

Cells(10, Z).Value = Cells(i, 1).Value

Z = Z + 1

End If

Loop Until Cells(i, 1).Value = " "

End Sub

Publicité
rogerone
 Posté le 03/04/2013 à 17:33 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

bonjour,

j'oublie de mentionner que je travaille avec excell2007

rogerone

ferrand
 Posté le 03/04/2013 à 18:28 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonsoir,

Tu pourrais la mettre complète déjà, elle ne semble pas l'être, et puis respecter une commande par ligne, ça la rendra au moins lisible.

Ensuite il serait bien que les variables soient déclarées, que les "select" disparaissent, les lignes inutiles aussi, bref qu'on utilise rationnellement la syntaxe VBA. Mais pour ça on peut aider !

En l'état, si c'est bien celle là qui est dans ton module, elle ne peut que déclencher des erreurs à répétition. Hors erreurs de copie possibles, la cellule (i,1) ne variant pas dans la macro, si sa valeur est "", elle sera vite finie, si elle est autre on aura 16374 tour de boucle, on ne voit pas trop pourquoi !

ferrand
 Posté le 04/04/2013 à 07:16 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
  Astucien

Bonjour,

J'ai pris un peu de temps pour décoder tes intentions. Sans garantie, eut égard à ce qui n'est pas formulé, tu devrais essayer ceci :

Sub compoequipe()
Dim choix$, Z%, i%
Workbooks.Open "e:\tenexcel\lf2013.xlsm"
choix = InputBox("donnez les 3 premières lettres du joueur")
i = 3
Z = 10
With Workbooks("lf2013.xlsm").Worksheets("lfhalp")
Do While .Cells(i, 1).Value <> ""
If Left(.Cells(i, 1).Value, 3) = choix Then
.Cells(10, Z).Value = .Cells(i, 1).Value
Z = Z + 1
End If
i = i + 1
Loop
End With
End Sub

rogerone
 Posté le 04/04/2013 à 09:12 
Aller en bas de la page Revenir au message précédent Revenir en haut de la page
Petit astucien

Bonjour,

un tout grand merci pour avoir remis tout en ordre;j'ai testé la macro et tout fonctionne rapidement et répond à mon attente;

encore merci à Ferrand pour son aide précieuse

rogerone

Page : [1] 
Page 1 sur 1

Vous devez être connecté pour participer à la discussion.
Cliquez ici pour vous identifier.

Vous n'avez pas de compte ? Créez-en un gratuitement !
Recevoir PC Astuces par e-mail


La Lettre quotidienne +226 000 inscrits
Avec l'actu, des logiciels, des applis, des astuces, des bons plans, ...

Les bonnes affaires
Une fois par semaine, un récap des meilleurs offres.

Les fonds d'écran
De jolies photos pour personnaliser votre bureau. Une fois par semaine.

Les nouveaux Bons Plans
Des notifications pour ne pas rater les bons plans publiés sur le site.

Les bons plans du moment PC Astuces

Tous les Bons Plans
30,99 €Clé USB 3.0 et Micro USB Sandisk Ultra OTG 256 Go à 30,99 €
Valable jusqu'au 28 Février

Amazon fait une promotion sur la nouvelle version de la clé USB 3.0 SanDisk Dual Drive 256 Go qui passe à 30,99 € livrée gratuitement. La particularité de cette clé USB réside dans le fait qu'elle dispose à la fois d'un connecteur USB pour la brancher sur votre ordinateur ou votre TV, mais également d'un connecteur micro USB pour la brancher sur votre smartphone ou votre tablette. Compatible USB 3.0 (et 2.0), cette clé USB offre des débits jusqu'à 150 Mo/s. 


> Voir l'offre
17,99 €Lot de 20 masques de protection FFP2 à 17,99 €
Valable jusqu'au 28 Février

Amazon fait une promotion sur le lot de 20 masques de protection FFP2 qui passe à 17,99 € livré gratuitement. Le produit est expédié par Amazon. À la différence du masque chirurgical qui empêche principalement les gouttelettes émises par le porteur de se propager à l'extérieur, le masque FPP2 protège son porteur contre l'inhalation d'agents infectieux ou de microparticules. Il filtre 94% des particules de l'extérieur vers l'intérieur. Les masques sont emballés individuellement.


> Voir l'offre
93,99 €Ecran 24 pouces AOC 24B2XHM2 (FullHD, sans contour) à 93,99 €
Valable jusqu'au 01 Mars

Cdiscount propose actuellement l'écran 24 pouces AOC 24B2XHM2 à 93,99 €. On le trouve ailleurs à partir de 110 €. Cet écran à rétroéclairage LED est Full HD (1920x1080) avec une dalle VA à bords fins 75 Hz et dispose d'entrées VGA et HDMI.


> Voir l'offre

Sujets relatifs
2 pages par feuille dans macro excel
Creation d' une boucle macro dans fichier EXCEL pour impression
macro afficher masquer lignes tableau dans word 2010
Ecrir par macro dans des cellules différents
[chemin relatif dans une macro]
se positionner avec une macro dans une cellule précise
Place du curseur dans macro
Bouton macro dans feuille Excel 2010
Macro introuvable / Erreur de compilation dans le module caché
Création d'une macro dans Word
Plus de sujets relatifs à l''instruction cells(1,3) rejetée dans une macro
 > Tous les forums > Forum Bureautique