Soucis de formule en VBA excel
Résolu/Fermé
2pax.cruz
-
9 juil. 2010 à 09:03
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 9 juil. 2010 à 09:52
pijaku Messages postés 12263 Date d'inscription jeudi 15 mai 2008 Statut Modérateur Dernière intervention 4 janvier 2024 - 9 juil. 2010 à 09:52
A voir également:
- Soucis de formule en VBA excel
- Formule excel pour additionner plusieurs cellules - Guide
- Formule excel si et - Guide
- Excel mise en forme conditionnelle formule - Guide
- Formule excel moyenne - Guide
- Formule excel - Guide
5 réponses
Je viens de trouver. Je ne connaissais pas l'utilisation de Cells().Adress
Cependant, cela marche très bien mais lorsqu'on insère une ligne dans le tableau, ça en insère une aussi dans la deuxième mais sa valeur est alors #Ref!
Comment faire?
Merci.
Cependant, cela marche très bien mais lorsqu'on insère une ligne dans le tableau, ça en insère une aussi dans la deuxième mais sa valeur est alors #Ref!
Comment faire?
Merci.
Bonjour,
remplace la ligne :
Sheets(NomFeuilleDepart).Cells(i, 1).Formula = "=tableau!" & Cells(i, n)
par celle-ci :
Worksheets(NomFeuilleDepart).Cells(i, 1).FormulaR1C1 = "=tableau!R" & i & "C" & n
Bonne journée
remplace la ligne :
Sheets(NomFeuilleDepart).Cells(i, 1).Formula = "=tableau!" & Cells(i, n)
par celle-ci :
Worksheets(NomFeuilleDepart).Cells(i, 1).FormulaR1C1 = "=tableau!R" & i & "C" & n
Bonne journée
Cela permet de définir la référence d'une cellule par la notation LxCy ou x est le numero de la ligne et y est le numero de la colonne.
Donc avec formulaR1C1 tu peux définir une formule ou les index de colonne ET de ligne sont des entiers, contrairement à la notation A1
Donc en exemple la notation E2 et la notation L2C5 définisse la même cellule.
En VBA, anglais oblige, L2C5 devient dans ton code R2C5.
Donc avec formulaR1C1 tu peux définir une formule ou les index de colonne ET de ligne sont des entiers, contrairement à la notation A1
Donc en exemple la notation E2 et la notation L2C5 définisse la même cellule.
En VBA, anglais oblige, L2C5 devient dans ton code R2C5.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pijaku
Messages postés
12263
Date d'inscription
jeudi 15 mai 2008
Statut
Modérateur
Dernière intervention
4 janvier 2024
2 752
9 juil. 2010 à 09:52
9 juil. 2010 à 09:52
Salut,
Pour obtenir ton résultat, il faut :
Chercher dans les colonnes, à la ligne 21, la valeur contenue dans le combobox1 et en retourner le numéro de colonne correspondante :
Ensuite, copier le contenu de cette colonne, de la ligne 21 à la dernière ligne complétée, vers la feuille NomFeuilleDepart à partir de A21 :
Code complet :
Pour obtenir ton résultat, il faut :
Chercher dans les colonnes, à la ligne 21, la valeur contenue dans le combobox1 et en retourner le numéro de colonne correspondante :
Dim numcol As Integer With Sheets("tableau").Range("A21:Y21") numcol = .Cells.Find(Combobox1.Value).Column End With
Ensuite, copier le contenu de cette colonne, de la ligne 21 à la dernière ligne complétée, vers la feuille NomFeuilleDepart à partir de A21 :
Dim derlig As Integer With Sheets("tableau") derlig = .Cells(65536, numcol).End(xlUp).Row .Range(.Cells(21, numcol), .Cells(derlig, numcol).Copy Sheets(NomFeuilleDepart).Cells(1, 1) End With
Code complet :
Dim numcol, derlig As Integer With Sheets("tableau").Range("A21:Y21") numcol = .Cells.Find(Combobox1.Value).Column End With With Sheets("tableau") derlig = .Cells(65536, numcol).End(xlUp).Row .Range(.Cells(21, numcol), .Cells(derlig, numcol).Copy Sheets(NomFeuilleDepart).Cells(1, 1) End With Sheets(NomFeuilleDepart).Activate
9 juil. 2010 à 09:13