Fonction VBA Trim$
medbo
Messages postés
570
Statut
Membre
-
medbo Messages postés 570 Statut Membre -
medbo Messages postés 570 Statut Membre -
Bonjour,
La fonction Trim$ ne fonctionne pas ? et voici le bout de code où elle est écrite :
Option Explicit
Private Sub TextBox1_Change()
Call LVW_Fill(trim$(TextBox1.Text), ComboBox1.ListIndex)
End Sub
Private Sub UserForm_Activate()
Me.Caption = "Historique des commandes"
Set ListView1.Icons = ImageList1
Set ListView1.SmallIcons = ImageList1
Call CBO_Fill
Call LVW_Fill("", 0)
End Sub
Private Sub CBO_Fill()
'Variables locales
Dim iCnt As Integer
Dim oRng As Excel.Range
'Remplit la Combo
Set oRng = Feuil3.Cells(1, 1)
For iCnt = 0 To 13 '-- 14 colonnes
ComboBox1.AddItem oRng.Offset(0, iCnt)
Next iCnt
ComboBox1.ListIndex = 0
End Sub
Private Sub LVW_Fill(ByVal sFilter As String, ByVal iCol As Integer)
'Variables locales
Dim iCnt As Integer
Dim iRnd As Integer
Dim oRng As Excel.Range
Dim oItem As ListItem
'Initialisation de la ListView
ListView1.ColumnHeaders.Clear
ListView1.FullRowSelect = True
ListView1.ListItems.Clear
ListView1.View = lvwReport
'Remplissage de la ListView
Set oRng = Feuil3.Cells(1, 1)
Do Until oRng.Value = ""
'-- En-têtes
If oRng.Row = 1 Then
For iCnt = 0 To 13 '-- 14 colonnes
ListView1.ColumnHeaders.Add , , oRng.Offset(0, iCnt)
Next iCnt
'-- Données
Else
iRnd = Int((4 * Rnd) + 1)
Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), "Key" & iRnd, "Key" & iRnd)
For iCnt = 1 To 14 '-- 14 colonnes
oItem.ListSubItems.Add , , oRng.Offset(0, iCnt)
Next iCnt
End If
Set oRng = oRng.Offset(1, 0)
Loop
End Sub
il y a le message erreur de compilation projet ou bibliothèque introuvable
comment y remédier SVP
j'ai essayé de déclaré Trim comme "integer" et comme "string" mais ça ne marche pas
je vous informe que je suis amateur en VBA
La fonction Trim$ ne fonctionne pas ? et voici le bout de code où elle est écrite :
Option Explicit
Private Sub TextBox1_Change()
Call LVW_Fill(trim$(TextBox1.Text), ComboBox1.ListIndex)
End Sub
Private Sub UserForm_Activate()
Me.Caption = "Historique des commandes"
Set ListView1.Icons = ImageList1
Set ListView1.SmallIcons = ImageList1
Call CBO_Fill
Call LVW_Fill("", 0)
End Sub
Private Sub CBO_Fill()
'Variables locales
Dim iCnt As Integer
Dim oRng As Excel.Range
'Remplit la Combo
Set oRng = Feuil3.Cells(1, 1)
For iCnt = 0 To 13 '-- 14 colonnes
ComboBox1.AddItem oRng.Offset(0, iCnt)
Next iCnt
ComboBox1.ListIndex = 0
End Sub
Private Sub LVW_Fill(ByVal sFilter As String, ByVal iCol As Integer)
'Variables locales
Dim iCnt As Integer
Dim iRnd As Integer
Dim oRng As Excel.Range
Dim oItem As ListItem
'Initialisation de la ListView
ListView1.ColumnHeaders.Clear
ListView1.FullRowSelect = True
ListView1.ListItems.Clear
ListView1.View = lvwReport
'Remplissage de la ListView
Set oRng = Feuil3.Cells(1, 1)
Do Until oRng.Value = ""
'-- En-têtes
If oRng.Row = 1 Then
For iCnt = 0 To 13 '-- 14 colonnes
ListView1.ColumnHeaders.Add , , oRng.Offset(0, iCnt)
Next iCnt
'-- Données
Else
iRnd = Int((4 * Rnd) + 1)
Set oItem = ListView1.ListItems.Add(, , oRng.Offset(0, 0), "Key" & iRnd, "Key" & iRnd)
For iCnt = 1 To 14 '-- 14 colonnes
oItem.ListSubItems.Add , , oRng.Offset(0, iCnt)
Next iCnt
End If
Set oRng = oRng.Offset(1, 0)
Loop
End Sub
il y a le message erreur de compilation projet ou bibliothèque introuvable
comment y remédier SVP
j'ai essayé de déclaré Trim comme "integer" et comme "string" mais ça ne marche pas
je vous informe que je suis amateur en VBA
A voir également:
- Fonction VBA Trim$
- Fonction si et - Guide
- Fonction miroir - Guide
- Fonction moyenne excel - Guide
- Excel compter cellule couleur sans vba - Guide
- Fonction remplacer sur word - Guide
3 réponses
Bonsoir,
Trim (tu n'es pas obligé de mettre le $) étant une fonction tu n'as pas à la déclarer.
Il lui faut en paramètre un string, elle retourne un string, ce qui semble conforme dans ton programme.
Pour t'assurer de son fonctionnement ajoute devant l'erreur :
MsgBox ("-" & Trim(TextBox1.Text) & "-")
Confirme que ne marche toujours pas, ce qui serait étonnant.
eric
Trim (tu n'es pas obligé de mettre le $) étant une fonction tu n'as pas à la déclarer.
Il lui faut en paramètre un string, elle retourne un string, ce qui semble conforme dans ton programme.
Pour t'assurer de son fonctionnement ajoute devant l'erreur :
MsgBox ("-" & Trim(TextBox1.Text) & "-")
Confirme que ne marche toujours pas, ce qui serait étonnant.
eric
bonjour
Es-tu sûr que cela vienne vraiment de trim ?
Ceci devrait aussi te causer quelques soucis :
Es-tu sûr que cela vienne vraiment de trim ?
Ceci devrait aussi te causer quelques soucis :
Set oRng = Feuil3.Cells(1, 1)
bonjour
Je ne sais pas comment est fait ton formulaire mais j'en ai créé un avec les données que tu as fournies et ton code fonctionne mis à part ce que je t'ai déjà signalé et "ImageList1" que j'ai mis en commentaire :
http://www.cijoint.fr/cjlink.php?file=cj201104/cijZ7rfswU.xls
Tu es sous linux ?
Je ne sais pas comment est fait ton formulaire mais j'en ai créé un avec les données que tu as fournies et ton code fonctionne mis à part ce que je t'ai déjà signalé et "ImageList1" que j'ai mis en commentaire :
http://www.cijoint.fr/cjlink.php?file=cj201104/cijZ7rfswU.xls
Tu es sous linux ?
le problème perciste. voici un autre exemple de mon fichier auquel je voudrai appliquer un filtrage par listview. le code ce n'est pas moi qui l'ai fais, mais j'esssaie de l'adapter à mon fichier.
dites moi ce qui ne va pas avec ce fichier.
je répéte, je suis amateur en VBA.
merci pour votre aide.
http://www.cijoint.fr/cjlink.php?file=cj201104/cijwF56MLZ.xls
dites moi ce qui ne va pas avec ce fichier.
je répéte, je suis amateur en VBA.
merci pour votre aide.
http://www.cijoint.fr/cjlink.php?file=cj201104/cijwF56MLZ.xls
Un petit complément à l'intervention d'Eric (bonjour Eric, ca va ?)
comme tu appleles une sub et non une fonction, il ne faut pas mettre de parenthèses
pour + tard: merci de mettre tes codes entre les <> de l'onglet en haut à droite du message Merci
Bé oui, tu as tout à fait raison :-)
Je ne peux pas mettre + ...
Très bonne journée
eric
quant à mettre Call LVW_Fill trim(TextBox1.Text), ComboBox1.ListIndex sans mettre de parenthèse, ça ne marche pas aussi