Etendre une plage de recherche sur un code VB déjà existant

LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012 - 8 févr. 2012 à 10:42
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012 - 20 févr. 2012 à 09:17
Bonjour à tous!

Je suis au bord du gouffre, et pas loin de faire un pas en avant ^^

Je souhaitais avoir la possibilité de faire une recherche multiple. En fouinant sur le net, j'ai trouvé un code (VBA) top proposé par un internaute. J'ai tenté de l'adapter à mes besoins, mais je me trouve confrontée à 2 problèmes:
Tout d'abord la plage de recherche dont j'ai besoin est bien plus grande que celle codée actuellement.
Ensuite, le champ intitulé "N'importe" ne fonctionne plus lorsque je dépasse un certain nombre de lignes dans ma feuille BDD.
J'ai avalé 2-3 tutos VBA pour résoudre ça toute seule, mais vu que je dois rendre ça avant la fin de la semaine, je n'ai plus le luxe d'attendre de comprendre

Quelqu'un aurait il l'extrême amabilité de me venir en aide?

Merci beaucoup d'avance!!


Option Explicit
Option Base 1

Private Sub ComboBox1_Change()
Dim i&, fin&, y&, a&
ComboBox2.Clear
If ComboBox1.ListIndex = -1 Then ListBox1.Clear: Exit Sub
With Feuil3
fin = .Range("A" & Rows.Count).End(xlUp).Row
aa = .Range("A2:K" & fin)
y = 1
For i = 1 To UBound(aa)
aa(i, 11) = ""
Next i
For i = 1 To UBound(aa)
If aa(i, 2) ComboBox1 Then aa(i, 11) "oui": y = y + 1
Next i
If y = 1 Then Exit Sub
ReDim bb(y - 1, 10)
y = 1
For i = 1 To UBound(aa)
If aa(i, 11) = "oui" Then
ComboBox2.AddItem aa(i, 7)
For a = 1 To 10
bb(y, a) = aa(i, a)
Next a
y = y + 1
End If
Next i
ListBox1.ColumnCount = 10
ListBox1.ColumnWidths = "20;80;30;80;60;60;60;60;60;80"
ListBox1.List = bb
End With
End Sub

Private Sub ComboBox2_Change()
Dim i&, y&, a&
y = 1
For i = 1 To UBound(aa)
aa(i, 11) = ""
Next i
For i = 1 To UBound(aa)
If aa(i, 2) ComboBox1 And aa(i, 7) ComboBox2 Then aa(i, 11) = "oui": y = y + 1
Next i
If y = 1 Then Exit Sub
ReDim bb(y - 1, 10)
y = 1
For i = 1 To UBound(aa)
If aa(i, 11) = "oui" Then
For a = 1 To 10
bb(y, a) = aa(i, a)
Next a
y = y + 1
End If
Next i
ListBox1.List = bb
End Sub

Private Sub CommandButton1_Click()
Dim i&, a&
Feuil2.Range("A4:H2000").ClearContents
If ListBox1.ListCount = 0 Then Exit Sub
Feuil2.Range("D1") = ComboBox1
ReDim cc(UBound(bb), UBound(bb, 2) - 2)
For i = 1 To UBound(bb)
For a = 3 To 10
cc(i, a - 2) = bb(i, a)
Next a
Next i
Feuil2.Range("A4").Resize(UBound(cc), UBound(cc, 2)) = cc
Unload Me
Feuil2.Select
End Sub

Private Sub TextBox1_Change()
Dim i&, a&, y&, fin&
ListBox1.Clear
If TextBox1 = "" Then Exit Sub
If TextBox1 <> "" Then ComboBox1 "": ComboBox2 ""
With Feuil3
fin = .Range("A" & Rows.Count).End(xlUp).Row
aa = .Range("A2:K" & fin)
For i = 1 To UBound(aa)
aa(i, 11) = ""
Next i
y = 1
For i = 1 To UBound(aa)
For a = 1 To 10
If aa(i, a) Like "*" & TextBox1 & "*" Then aa(i, 11) "oui": y y + 1: GoTo 1
Next a
1 Next i
If y = 1 Then Exit Sub
ReDim bb(y - 1, 10)
y = 1
For i = 1 To UBound(aa)
If aa(i, 11) = "oui" Then
For a = 1 To 10
bb(y, a) = aa(i, a)
Next a
y = y + 1
End If
Next i
ListBox1.ColumnCount = 10
ListBox1.ColumnWidths = "20;80;30;80;60;60;60;60;60;80"
ListBox1.List = bb
End With
End Sub

Private Sub UserForm_Initialize()
Dim aa As Variant
aa = Feuil4.Range("C3:C" & Feuil4.Range("C" & Rows.Count).End(xlUp).Row)
ComboBox1.List = aa
End Sub

15 réponses

ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
8 févr. 2012 à 10:53
Bonjour,

Tu as posté dans la section VB6 au lieu de la section VBA (langages dérivés > VBA)
un administrateur déplacera sans doute ce post cette fois-ci, mais prends dorénavant, s'il te plait, le plus grand soin à ouvrir une discussion dans la section adéquate.

Ton code, tel qu'étalé ici, me donne le tournis.
Indente-le et représente-le entre les balises code prévues sur ce forum pour présenter du code. Je l'analyserai ensuite.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012
8 févr. 2012 à 11:08
Non d'un chien!
Désolée pour a section, je pensais avoir posté au bon endroit -_-'

J'espère que c'est bon maintenant avec les balises...
Merci en tout cas pour ta réponse rapide


Option Explicit
Option Base 1

Private Sub ComboBox1_Change()
Dim i&, fin&, y&, a&
ComboBox2.Clear
If ComboBox1.ListIndex = -1 Then ListBox1.Clear: Exit Sub
With Feuil3
fin = .Range("A" & Rows.Count).End(xlUp).Row
aa = .Range("A2:K" & fin)
y = 1
For i = 1 To UBound(aa)
aa(i, 11) = ""
Next i
For i = 1 To UBound(aa)
If aa(i, 2) ComboBox1 Then aa(i, 11) "oui": y = y + 1
Next i
If y = 1 Then Exit Sub
ReDim bb(y - 1, 10)
y = 1
For i = 1 To UBound(aa)
If aa(i, 11) = "oui" Then
ComboBox2.AddItem aa(i, 7)
For a = 1 To 10
bb(y, a) = aa(i, a)
Next a
y = y + 1
End If
Next i
ListBox1.ColumnCount = 10
ListBox1.ColumnWidths = "20;80;30;80;60;60;60;60;60;80"
ListBox1.List = bb
End With
End Sub

Private Sub ComboBox2_Change()
Dim i&, y&, a&
y = 1
For i = 1 To UBound(aa)
aa(i, 11) = ""
Next i
For i = 1 To UBound(aa)
If aa(i, 2) ComboBox1 And aa(i, 7) ComboBox2 Then aa(i, 11) = "oui": y = y + 1
Next i
If y = 1 Then Exit Sub
ReDim bb(y - 1, 10)
y = 1
For i = 1 To UBound(aa)
If aa(i, 11) = "oui" Then
For a = 1 To 10
bb(y, a) = aa(i, a)
Next a
y = y + 1
End If
Next i
ListBox1.List = bb
End Sub

Private Sub CommandButton1_Click()
Dim i&, a&
Feuil2.Range("A4:H2000").ClearContents
If ListBox1.ListCount = 0 Then Exit Sub
Feuil2.Range("D1") = ComboBox1
ReDim cc(UBound(bb), UBound(bb, 2) - 2)
For i = 1 To UBound(bb)
For a = 3 To 10
cc(i, a - 2) = bb(i, a)
Next a
Next i
Feuil2.Range("A4").Resize(UBound(cc), UBound(cc, 2)) = cc
Unload Me
Feuil2.Select
End Sub

Private Sub TextBox1_Change()
Dim i&, a&, y&, fin&
ListBox1.Clear
If TextBox1 = "" Then Exit Sub
If TextBox1 <> "" Then ComboBox1 "": ComboBox2 ""
With Feuil3
fin = .Range("A" & Rows.Count).End(xlUp).Row
aa = .Range("A2:K" & fin)
For i = 1 To UBound(aa)
aa(i, 11) = ""
Next i
y = 1
For i = 1 To UBound(aa)
For a = 1 To 10
If aa(i, a) Like "*" & TextBox1 & "*" Then aa(i, 11) "oui": y y + 1: GoTo 1
Next a
1 Next i
If y = 1 Then Exit Sub
ReDim bb(y - 1, 10)
y = 1
For i = 1 To UBound(aa)
If aa(i, 11) = "oui" Then
For a = 1 To 10
bb(y, a) = aa(i, a)
Next a
y = y + 1
End If
Next i
ListBox1.ColumnCount = 10
ListBox1.ColumnWidths = "20;80;30;80;60;60;60;60;60;80"
ListBox1.List = bb
End With
End Sub

Private Sub UserForm_Initialize()
Dim aa As Variant
aa = Feuil4.Range("C3:C" & Feuil4.Range("C" & Rows.Count).End(xlUp).Row)
ComboBox1.List = aa
End Sub 
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
8 févr. 2012 à 11:14
Bien pour l'utilisation des balises code
MAIS :
Si c'est cela qu tu appelles un code indenté, moi, je suis alors le pape !
Je n'ai pas moins le tournis qu'avec ta présentation précédente (et j'ai peu dormi, ce qui aggrave les choses, d'autant qu'avec le grand froid qu'il fait, je ne veux pas risquer un torticolis).



____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
8 févr. 2012 à 11:20
Non indenté + Goto (en plus) = Ah non, alors (même mes yeux commencent à avoir mal !)


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012
8 févr. 2012 à 11:21
Ok, 3ème essai...
Je n'avais pas fait attention au terme indenté que je viens d'apprendre par la même occasion...

Option Explicit
Option Base 1

Private Sub ComboBox1_Change()
    Dim i&, fin&, y&, a&
    ComboBox2.Clear
    If ComboBox1.ListIndex = -1 Then ListBox1.Clear: Exit Sub
    With Feuil3
        fin = .Range("A" & Rows.Count).End(xlUp).Row
        aa = .Range("A2:K" & fin)
        y = 1
        For i = 1 To UBound(aa)
            aa(i, 11) = ""
        Next i
        For i = 1 To UBound(aa)
            If aa(i, 2) ComboBox1 Then aa(i, 11) "oui": y = y + 1
        Next i
        If y = 1 Then Exit Sub
        ReDim bb(y - 1, 10)
        y = 1
        For i = 1 To UBound(aa)
            If aa(i, 11) = "oui" Then
            ComboBox2.AddItem aa(i, 7)
                For a = 1 To 10
                    bb(y, a) = aa(i, a)
                Next a
                y = y + 1
            End If
        Next i
        ListBox1.ColumnCount = 10
        ListBox1.ColumnWidths = "20;80;30;80;60;60;60;60;60;80"
        ListBox1.List = bb
    End With
End Sub

Private Sub ComboBox2_Change()
    Dim i&, y&, a&
    y = 1
    For i = 1 To UBound(aa)
        aa(i, 11) = ""
    Next i
    For i = 1 To UBound(aa)
        If aa(i, 2) ComboBox1 And aa(i, 7) ComboBox2 Then aa(i, 11) = "oui": y = y + 1
    Next i
    If y = 1 Then Exit Sub
    ReDim bb(y - 1, 10)
    y = 1
    For i = 1 To UBound(aa)
        If aa(i, 11) = "oui" Then
            For a = 1 To 10
                bb(y, a) = aa(i, a)
            Next a
            y = y + 1
        End If
    Next i
    ListBox1.List = bb
End Sub

Private Sub CommandButton1_Click()
    Dim i&, a&
    Feuil2.Range("A4:H2000").ClearContents
    If ListBox1.ListCount = 0 Then Exit Sub
    Feuil2.Range("D1") = ComboBox1
    ReDim cc(UBound(bb), UBound(bb, 2) - 2)
    For i = 1 To UBound(bb)
        For a = 3 To 10
            cc(i, a - 2) = bb(i, a)
        Next a
    Next i
    Feuil2.Range("A4").Resize(UBound(cc), UBound(cc, 2)) = cc
    Unload Me
    Feuil2.Select
End Sub

Private Sub TextBox1_Change()
    Dim i&, a&, y&, fin&
    ListBox1.Clear
    If TextBox1 = "" Then Exit Sub
    If TextBox1 <> "" Then ComboBox1 "": ComboBox2 ""
    With Feuil3
        fin = .Range("A" & Rows.Count).End(xlUp).Row
        aa = .Range("A2:K" & fin)
        For i = 1 To UBound(aa)
            aa(i, 11) = ""
        Next i
        y = 1
        For i = 1 To UBound(aa)
            For a = 1 To 10
                If aa(i, a) Like "*" & TextBox1 & "*" Then aa(i, 11) "oui": y y + 1: GoTo 1
            Next a
1       Next i
        If y = 1 Then Exit Sub
        ReDim bb(y - 1, 10)
        y = 1
        For i = 1 To UBound(aa)
            If aa(i, 11) = "oui" Then
                For a = 1 To 10
                    bb(y, a) = aa(i, a)
                Next a
                y = y + 1
            End If
        Next i
        ListBox1.ColumnCount = 10
        ListBox1.ColumnWidths = "20;80;30;80;60;60;60;60;60;80"
        ListBox1.List = bb
    End With
End Sub

Private Sub UserForm_Initialize()
Dim aa As Variant
aa = Feuil4.Range("C3:C" & Feuil4.Range("C" & Rows.Count).End(xlUp).Row)
    ComboBox1.List = aa
End Sub
0
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012
8 févr. 2012 à 11:25
Euh.. Que puis je faire pour le GoTo?
Tu parles bien de la conception du code? Si oui, j'aurai bien allégé le truc, mais comme tu l'as peut être compris, aujourd'hui je suis assez (beaucoup) limitée en code...
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
8 févr. 2012 à 11:35
On commence à y voir un peu plus clair
Alors : étape par étape :
fin = .Range("A" & Rows.Count).End(xlUp).Row
        aa = .Range("A2:K" & fin)
        y = 1
        For i = 1 To UBound(aa)
            aa(i, 11) = ""
        Next i
        For i = 1 To UBound(aa)
            If aa(i, 2) ComboBox1 Then aa(i, 11) "oui": y = y + 1
        Next i
        If y = 1 Then Exit Sub

        ReDim bb(y - 1, 10)

Tout cela pour dimensionner convenablement bb ?
Et que te retournerait l'utilisation de :
WorkSheetFunction.countif appliquée à la colonne 2 de ton range ?

Prends par ailleurs l'habitude de préciser la propriété utilisée d'un contrôle (ici ta combobox2). VB est tolérant, mais il arrive que certaines tolérances jouent de forts mauvais tours.
reprends déjà cette partie.

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012
8 févr. 2012 à 12:48
Alors... D'abord, merci de prendre le temps de tout bien expliquer dans les détails... Par contre je suis vraiment désolée, je dois être quelque chose comme Noob^10... (ce n'est pas moi qui est créé code) Et donc je ne saisis pas encore toutes les nuances...

Peux tu me dire où devrai je placer WokrSheetFunction.countif s'il te plait?

Pour ce qui est de la propriété, est ce qu'un truc comme ça irai?
 ComboBox2("plage").Selection = "tout"
        fin = .Range("A" & Rows.Count).End(xlUp).Row
        aa = .Range("A2:K" & fin)
        y = 1
        For i = 1 To UBound(aa)
            aa(i, 11) = ""
        Next i
        For i = 1 To UBound(aa)
            If aa(i, 2) ComboBox1 Then aa(i, 11) "oui": y = y + 1
        Next i
        If y = 1 Then Exit Sub
        ReDim bb(y - 1, 10)
        y = 1
        For i = 1 To UBound(aa)
            If aa(i, 11) = "oui" Then
            ComboBox2.AddItem aa(i, 7)
                For a = 1 To 10
                    bb(y, a) = aa(i, a)
                Next a
                y = y + 1
            End If
        Next i
        ListBox1.ColumnCount = 10
        ListBox1.ColumnWidths = "20;80;30;80;60;60;60;60;60;80"
        ListBox1.List = bb


C'est encore vraiment flou pour moi tout ça... Je ne compte pas en rester là, mais j'ai conscience d'être un tit peu un boulet VB...
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
8 févr. 2012 à 12:55
Si ce n'est pas toi, qui as créé ce code ...
ne me demande pas d'en prendre le relais, dans l'état où il est.
Tu commences par l'analyser, comme moi, s'il te plait !
ou tu le laisse tel qu'il est
ou encore, tu recommence tout, en fonction des tenants et aboutissants de ton appli.

Je n'aime pas (mais alors pas du tout) participer à l'évolution d'une appli dont, de surcroît, le code originel ne serait pas parfaitement compris de celui qui veut "se lancer" dans son évolution.

Désolé ! (mais je suis ainsi et nul ne me changera).
Si, par contre, tu veux tout reprendre à la base : je t'y aiderai avec plaisir;
Il te faudra dans ces conditions exposer ici (clairement et exactement), pas à pas, les tenants et aboutissants de ce que tu cherches à faire (-pas de ce que tu "cherches à reprendre")

____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
NHenry Messages postés 15123 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 20 mai 2024 159
8 févr. 2012 à 13:00
Bonjour,

Pour remplacer les Goto, renseignes-toi sur les instructions Exit
Exit For
Exit Sub
Exit Do
Exit Function
...

En général, en VB, un Goto (sauf pour les On Error Goto ...) indique que le code est mal construit ou que le développeur devrait voir l'aide.

---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
ucfoutu Messages postés 18038 Date d'inscription lundi 7 décembre 2009 Statut Modérateur Dernière intervention 11 avril 2018 211
8 févr. 2012 à 13:08
Bonjour, NHenry,

il aurait du (l'auteur) également prendre des cours de mécanisme des neurones et éiter des choses du genre :
If TextBox1 = "" Then Exit Sub
If TextBox1 <> "" Then ComboBox1 "": ComboBox2 ""

A quoi servirait donc la deuxième expression conditionnelle, ici ? sinon à rigoureusement RIEZN
sans vouloir trop insister sur l'abus des tolérances de VB (du genre accepter sans "moufter" : ComboBox1 = "").

Je dirais à nouveau sans la moindre hésitation : tout reprendre à zéro.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
0
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012
8 févr. 2012 à 13:21
Ok, pas de soucis, je comprends bien ton point de vue!
Si tu as le courage de tout reprendre depuis le début avec moi, c'est avec grand plaisir. ça n'en sera que beaucoup plus instructif.

Alors, je vais essayer d'être le plus claire possible sur ce que je souhaite réaliser:

J'ai une base de donnée assez conséquente (35 colonnes-35000 lignes).
Je voudrais avoir la possibilité de faire une recherche sur 2 critères pour extraire des lignes de cette base (sous la forme d'une mini base raccourcie).

[i]Pour illustrer:
J'ai des numéros de succursales (qui regroupent plusieurs points de vente), j'ai des numéros de points de vente, et j'ai des numéros de groupement d'article. Or j'ai parfois les mêmes groupements d'articles sur des PDV différents (d'où la nécessité d'une recherche multicritère) /i

Puis, depuis cette mini base, je voudrais pouvoir sélectionner une ligne et que les données de cette ligne soient transférée dans un format fiche présent sur une autre feuille... ça j'ai à peu prés réussi avec du bricolage maison (mais évidement s'il faut dégager ça et le reprendre, il n'y a pas de souci):
Sub Export1()
'
' Export1 Macro
'

'
    Sheets("Affichage fiche").Select
    Range("C1").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!R[3]C[-2]"
    Range("B3").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!R[1]C"
    Range("B4").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!RC[1]"
    Range("B5").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!R[-1]C[2]"
    Range("B6").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!R[-2]C[4]"
    Range("B7").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!R[-3]C[5]"
    Range("B8").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!R[-4]C[6]"
    Range("E1").Select
    ActiveCell.FormulaR1C1 = "='Affichage Liste'!R[3]C"
    Range("E2").Select
End Sub



Si ce n'est pas suffisamment clair, je peux toujours faire des printscreen si cela vous va mieux...
0
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012
14 févr. 2012 à 09:35
Je vous ai tous perdus?
0
NHenry Messages postés 15123 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 20 mai 2024 159
19 févr. 2012 à 17:00
Bonjour,

A la place de faire tous ces Select inutiles, essayes :
With Sheets("Affichage fiche")
    .Range("C1").FormulaR1C1 = "='Affichage Liste'!R[3]C[-2]"
    .Range("B3").FormulaR1C1 = "='Affichage Liste'!R[1]C"
    .Range("B4").FormulaR1C1 = "='Affichage Liste'!RC[1]"
    .Range("B5").FormulaR1C1 = "='Affichage Liste'!R[-1]C[2]"
    .Range("B6").FormulaR1C1 = "='Affichage Liste'!R[-2]C[4]"
    .Range("B7").FormulaR1C1 = "='Affichage Liste'!R[-3]C[5]"
    .Range("B8").FormulaR1C1 = "='Affichage Liste'!R[-4]C[6]"
    .Range("E1").FormulaR1C1 = "='Affichage Liste'!R[3]C"
End With


---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS, ce lien ou encore celui-ci[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list
---
Mon site
0
LaureneK Messages postés 8 Date d'inscription mercredi 1 février 2012 Statut Membre Dernière intervention 20 février 2012
20 févr. 2012 à 09:17
Ah oui, c'est un peu plus light comme ça!! Merci beaucoup!!
0
Rejoignez-nous