Excel VBA
Résolu/Fermé
ivan34
Messages postés
2
Date d'inscription
mercredi 9 décembre 2009
Statut
Membre
Dernière intervention
10 décembre 2009
-
9 déc. 2009 à 06:55
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 12 déc. 2009 à 09:05
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 12 déc. 2009 à 09:05
A voir également:
- Excel VBA
- Liste déroulante excel - Guide
- Formule excel - Guide
- Si et excel - Guide
- Aller à la ligne excel - Guide
- Mise en forme conditionnelle excel - Guide
4 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 688
9 déc. 2009 à 09:22
9 déc. 2009 à 09:22
bonjour
Comme je suppose que tu veux faire évoluer B2 tu peux mettre :
Tu remplaces le "C" par la colonne où tu mets ta formule.
Comme je suppose que tu veux faire évoluer B2 tu peux mettre :
Dim lig As Long For lig = 2 To 10 Cells(lig, "C").FormulaLocal = "=INDEX(Feuil1!A:A;EQUIV(GAUCHE(B" & lig & ";5);Feuil1!B:B;0))" Next lig
Tu remplaces le "C" par la colonne où tu mets ta formule.
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 688
10 déc. 2009 à 23:20
10 déc. 2009 à 23:20
bonjour
Dans ta formule :
=INDEX(Feuil1!A:A;EQUIV(GAUCHE(B2;5);Feuil1!B:B;0))
j'ai fait évoluer la ligne (2) que veux-tu faire évoluer :
- la colonne B ?
- Cells(lig, "C").FormulaLocal la colonne où se situe la formule ?
Dans ta formule :
=INDEX(Feuil1!A:A;EQUIV(GAUCHE(B2;5);Feuil1!B:B;0))
j'ai fait évoluer la ligne (2) que veux-tu faire évoluer :
- la colonne B ?
- Cells(lig, "C").FormulaLocal la colonne où se situe la formule ?
Bonjour,
En fait ce que je fais évoluer c'est
Cells(lig,"C").formulalocal
en fait j'ajoute mes 40 colonnes
Cells(lig,"D").formulalocal
Cells(lig,"E").formulalocal
Cells(lig,"F").formulalocal...
Mon souci c'était de savoir s'il y avait un moyen d'éviter cette répétition.
D'avoir comme une boucle à la place de "C"
du style
for lig =2 to 8000
for col = 3 to 40
Cells(lig,col).formulalocal="=INDEX(Feuil1!A:A;EQUIV(GAUCHE(B2;5);Feuil1!B:B;0))"
next col
next lig
Merci pour ton aide
ivan34
En fait ce que je fais évoluer c'est
Cells(lig,"C").formulalocal
en fait j'ajoute mes 40 colonnes
Cells(lig,"D").formulalocal
Cells(lig,"E").formulalocal
Cells(lig,"F").formulalocal...
Mon souci c'était de savoir s'il y avait un moyen d'éviter cette répétition.
D'avoir comme une boucle à la place de "C"
du style
for lig =2 to 8000
for col = 3 to 40
Cells(lig,col).formulalocal="=INDEX(Feuil1!A:A;EQUIV(GAUCHE(B2;5);Feuil1!B:B;0))"
next col
next lig
Merci pour ton aide
ivan34
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 688
11 déc. 2009 à 18:26
11 déc. 2009 à 18:26
bonjour
As-tu essayé comme ceci :
Comme tu n'as pas expliqué le but c'est difficile de trouver le code.
As-tu essayé comme ceci :
Dim lig As Long Dim col As Long For lig = 2 To 8000 For col = 3 To 40 Cells(lig, col).FormulaLocal = "=INDEX(Feuil1!A:A;EQUIV(GAUCHE(B" & lig & ";5);Feuil1!B:B;0))" Next col Next lig
Comme tu n'as pas expliqué le but c'est difficile de trouver le code.
Bonjour,
Oui j'ai essayé
En fait le but c'est de pouvoir utiliser cette fonction, ou peut être sous forme vba, afin d'avoir le même résultat.
Ce que je veux c'est pouvoir recopier cette fonction de la ligne C2 à la colonne AI8000, en tenant compte de ma variable qui se trouve en colonne B (en fait celle ci est bonne rien ne change).
Merci pour tes conseils.
ivan34
Oui j'ai essayé
En fait le but c'est de pouvoir utiliser cette fonction, ou peut être sous forme vba, afin d'avoir le même résultat.
Ce que je veux c'est pouvoir recopier cette fonction de la ligne C2 à la colonne AI8000, en tenant compte de ma variable qui se trouve en colonne B (en fait celle ci est bonne rien ne change).
Merci pour tes conseils.
ivan34
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 688
12 déc. 2009 à 09:05
12 déc. 2009 à 09:05
bonjour
mes colonnes C2 à AI8000 sont toutes différentes
Avec ce que tu met tu écrases ces colonnes et donc cela ne peut fonctionner.
Essaies de nous mettre un exemple de classeur sans données privées sur http://www.cijoint.fr/ pour que l'on comprenne le but recherché puis tu nous donnes ici le lien généré.
mes colonnes C2 à AI8000 sont toutes différentes
Avec ce que tu met tu écrases ces colonnes et donc cela ne peut fonctionner.
Essaies de nous mettre un exemple de classeur sans données privées sur http://www.cijoint.fr/ pour que l'on comprenne le but recherché puis tu nous donnes ici le lien généré.
10 déc. 2009 à 21:25
Merci pour ta réponse si prompt gbinforme,
Oui effectivement cela fonctionne mais par contre je voudrais pouvoir avoir un code vba qui ressemble a cette fonction car j'ai 8000 lignes et 40 colonnes
Donc comment puis je faire, afin d'éviter d'écrire 40 lignes.
Par avance merci de ta réponse.
ivan34