Une fois de plus je me tourne vers vous la team Excel,
j'aurai besoin aujourd'hui de filtrer ma listbox avec 3 ou 1 barre de recherche textbox selon mon besoin.
Le classeur a le Vbe protégé .
Mais je vois quand même le problème.
Certaines colonnes de la table ont un espace dans leur nom
Dans ce cas modifier le code pour en tenir compte en encadrant ces noms par des crochets :
VB:
If TextBox3 <> "" Then Where_String = Where_String & IIf(Where_String = "", "", " and ") & " [Ref Palette]='" & TextBox3 & "' "
( éviter de laisser des espaces en fin de champs aussi )
Le classeur a le Vbe protégé .
Mais je vois quand même le problème.
Certaines colonnes de la table ont un espace dans leur nom
Dans ce cas modifier le code pour en tenir compte en encadrant ces noms par des crochets :
VB:
If TextBox3 <> "" Then Where_String = Where_String & IIf(Where_String = "", "", " and ") & " [Ref Palette]='" & TextBox3 & "' "
( éviter de laisser des espaces en fin de champs aussi )
Le classeur a le Vbe protégé .
Mais je vois quand même le problème.
Certaines colonnes de la table ont un espace dans leur nom
Dans ce cas modifier le code pour en tenir compte en encadrant ces noms par des crochets :
VB:
If TextBox3 <> "" Then Where_String = Where_String & IIf(Where_String = "", "", " and ") & " [Ref Palette]='" & TextBox3 & "' "
( éviter de laisser des espaces en fin de champs aussi )
Les "dates" à partir du code conducteur 6013 sont du type "String" et non "Date",
probablement suite à un copier/coller d'un fichier texte ....
ou saisi via un userform qui n'a pas converti le textbox en date ...
Exécutez le code ci-dessous :
VB:
Sub Restore_Dates()
Dim C As Range
For Each C In [Tab_GestionStock[Date]]
If Not VarType(C.Value) = vbDate Then C.Value = CDate(C.Value)
Next
End Sub
Les "dates" à partir du code conducteur 6013 sont du type "String" et non "Date",
probablement suite à un copier/coller d'un fichier texte ....
ou saisi via un userform qui n'a pas converti le textbox en date ...
Exécutez le code ci-dessous :
VB:
Sub Restore_Dates()
Dim C As Range
For Each C In [Tab_GestionStock[Date]]
If Not VarType(C.Value) = vbDate Then C.Value = CDate(C.Value)
Next
End Sub
Après plusieurs mois je constate que mon fichier ne fonctionne pas quand il est sur un serveur.
En fouillant un petit peu j'ai vu un mémo ou tu indiques ''ne pas utiliser adUseClient ou adUseServer sinon renseigner les références vb''.
Salut,
Le code proposé fait appel au module Ado en mode dynamique :
Set Base = CreateObject("ADODB.Connection")
De ce fait, les constantes spécifiques au module n'existent pas, il faut indiquer leur valeur numérique .
Sinon, il faut référencer Ado dans les références du Vbe:
Cela inclut de ce fait toutes les constantes propres à Ado