> 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
139,99 €Disque dur externe USB 3.0 Seagate 8 To à 139,99 €
Valable jusqu'au 27 Janvier

Fnac propose actuellement le disque dur Seagate Expansion Desktop Drive 8 To à 139,99 € livré gratuitement alors qu'on le trouve ailleurs à partir de 180 €. Le disque est non soudé et vous pourrez le récupérer pour l'utiliser dans un ordinateur, un NAS, etc. Connexion USB 3.0.


> Voir l'offre
116,90 €TP-Link Deco M4 (WiFi Mesh 1200 Mbit/s, jusqu'à 320 m²) x 3 à 116,90 €
Valable jusqu'au 26 Janvier

Amazon fait une promotion sur le kit TP-Link Deco M4 avec 3 satellites qui passe à 116,99 € livré gratuitement alos qu'on le trouve ailleurs à partir de 150 €. Ces 3 satellites Deco travaillent ensemble pour former un seul et unique réseau WiFi, garantissant une connexion rapide importe où que vous êtes. Ils offrent une connexion Mesh WiFi haut débit de 1200 Mbit/s , la possibilité de connecter + de 60 appareils dans votre foyer jusqu'à 320 m² et sans zone morte (si cela ne suffit pas, ajoutez simplement plus de Deco à tout moment pour augmenter la couverture WiFi), idéal pour toute la maison.


> Voir l'offre
335,99 €Tablette Apple iPad 2020 32 Go à 335,99 €
Valable jusqu'au 24 Janvier

Rakuten propose la tablette Apple iPad 2020 32 Go à 335,99 € alors qu'on la trouve ailleurs autour de 379 €. Cette tablette de 10,2 pouces possède un écran rétina, 3 Go de RAM, 2 capteurs photo (8 Mpixels / 1.2 Mpixels) et un capteur d'empreintes digitales. 33,60 € vous seront également reversés en points Rakuten utilisables pour un prochain achat.


> 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