Incompatibilité de type

Bonjour,

Lors de l’exécution de ce code :

Private Sub UserForm_Initialize()
Dim P As Workbook
Dim Fb, Fs As Worksheet
Dim tbb As String

Set P = ThisWorkbook

P.Activate
MsgBox ActiveWorkbook.Name

Me.OptionButton1.Value = True

    Set Fb = Sheets("DI")
    Set Fs = Sheets("DNAIT")
MsgBox ("Point clé 1")

tbb = Fb.Range("A2:F" & Fb.[A65000].End(xlUp).Row) 'ERREUR ICI

MsgBox ("Point clé 2")
MsgBox ActiveWorkbook.Name

Cela me met une incompatibilité de type (13) sur la ligne indiqué par erreur ici, quelqu'un aurait une idée de résolution ?

Merci d'avance

Salut,

En regardant comme ça, tu dis que tbb est un string, pour ensuite lui attribuer une valeur d'objet Range ..

C'est peut être là où ça pêche.

Bibu

Salut bibu

J'avais pensé à ce soucis aussi mais sur tout mes autres fichiers je déclare mes tableau comme étant des string et cela fonctionne mais j'ai essayé de passer tbb en Range cependant cela change rien.

Merci de t'être penché sur mon soucis

Salut,

Si tu as essayé en passant tbb en Range, n'oublie pas d'écrire Set avant l'égalité (on attribue un range via Set). De plus, en modifiant un peu (chez moi ça fonctionne avec Range) le code :

Set tbb = Fb.Range("A2","F" & Fb.Range("A" & Rows.Count).End(xlUp).Row)

Bibu

Salut Bibu

Merci de ta réponse, il est vrai que je n'avais pas pensais à faire un set avec la déclaration Range, sauf que maintenant mon soucis (je suis embêtant) c'est que je ne sais pas utiliser cela pour remplir ma ListBox1

5test-forum.zip (587.13 Ko)
'On met en place les variables
Option Explicit
Dim Page As Variant
Dim Fdnait As Worksheet, Fdi As Worksheet
Dim tbb As String

Private Sub UserForm_Initialize()
Dim P As Workbook
Dim Fb, Fs As Worksheet
Dim tbb As Range

Set P = ThisWorkbook

P.Activate

Me.OptionButton1.Value = True

    Set Fb = Sheets("DI")
    Set Fs = Sheets("DNAIT")

Set tbb = Fb.Range("A2:J" & Fb.Range("A" & Rows.Count).End(xlUp).Row)

    'Paramètrage de la ListBox
    Me.ListBox1.ColumnCount = 7    'Nombre de colonne
    Me.ListBox1.ColumnWidths = "150; 100; 300; 300; 450; 50; 150"    'La taille de la colonne 1,2 et 3

End Sub

Private Sub CommandButton1_Click()
Me.Hide
End Sub

Private Sub OptionButton1_Click()
Page = "DI"

'AlimenteList
End Sub

Private Sub OptionButton2_Click()
Page = "DNAIT"

'AlimenteList
End Sub

Private Sub AlimenteList()
Dim mondico As Object, i As Integer, Tdi As String
    Me.ListBox1.Clear

If Page = "DI" Then

    For i = LBound(tbb) To UBound(tbb)
                Me.ListBox1.AddItem tbb(i, 1)
                Me.ListBox1.List(Me.ListBox1.ListCount - 1, 1) = Left(tbb(i, 2), 10)
                Me.ListBox1.List(Me.ListBox1.ListCount - 1, 2) = tbb(i, 3)
                Me.ListBox1.List(Me.ListBox1.ListCount - 1, 3) = tbb(i, 4)
                Me.ListBox1.List(Me.ListBox1.ListCount - 1, 3) = tbb(i, 5)
                Me.ListBox1.List(Me.ListBox1.ListCount - 1, 3) = tbb(i, 6)
                Me.ListBox1.List(Me.ListBox1.ListCount - 1, 3) = tbb(i, 7)

End If

If Page = "DNAIT" Then
End If

End Sub

Si t'as une idée je veux bien la connaitre

Merci d'avance

Bonjour,

Faire :

Dim Tb
Dim Fb As Worksheet
Set Fb = Sheets("DI")
Tb = Fb.Range("A2:F" & Fb.[A65000].End(xlUp).Row).Value
Me.ListBox1.List = Tb

A+

Merci infiniment de votre aide, j'ai pu beaucoup avancé sur mon fichier, maintenant je reste bloqué sur d'autres fonctionnalités (https://forum.excel-pratique.com/excel/filtre-listbox-bouton-vers-lien-recherche-161484), mais j'ai fait appel de nouveau à ce forum

Merci

QL

Rechercher des sujets similaires à "incompatibilite type"