Téléchargement
illégal
Posez votre question Signaler

Pb VERSION excel vb svp [Résolu]

lulu37 51Messages postés 24 août 2006Date d'inscription 6 mars 2011Dernière intervention - Dernière réponse le 12 août 2009 à 18:02
Bonjour à tous !

J'ai un gros problème.
J'ai créé une interface sous excel 2003 avec macros en vb 6 , sauf que finalement, il faut que ca tourne sous excel 97 ! et la version vb ? bin y a pas de n° ... microsoft visual basic coyright 87-97...
Les références ne sont évidemment pas les mêmes non plus :
Microsoft excel / office 8 Object library au lieu de 11...
Ca n'aime vraiment pas qd j ouvre sous 97, ca me fait des bog à droite à gauche et pourtant je ne vois pas d où vient le pb .
Exemple : bog sur autofilter, j'ai donc réenregistré la macro sans passer par vb et rien n'est différent niveau langage ... bref...
Quelqu'un peut il m'aider ? Je vous en prie dites moi que je n'ai pas fait tout ça pour rien !

Merci d'avance
Lire la suite 

Pb VERSION excel vb svp »

14 réponses
Réponse
+1
moins plus
Bonjour,

je n'ai plus d'office 97 pour tester donc difficile!!

mais voici quelques idées :
If TextBoxF <> Empty Then Selection.AutoFilter Field:=6, Criteria1:="=*" & TextBoxF.Value & "*" 
essaie de passer par une variable :
moncritère="=*" & TextBoxF.Value & "*"
et de mettre la condition sous la forme :
If not(isempty(Me.TextBoxF.value)) Then Selection.AutoFilter Field:=6, Criteria1:=moncritère
ActiveSheet.ShowAllData '=>bog'
là, tu pourrais mettre un :
Selection.AutoFilter

naturellement il faut que ta selection soit correcte! mais si ça marche sous 2003, ça doit être le cas.

bon courage
Ajouter un commentaire
Réponse
+0
moins plus
Après des essais de débogage, j'ai finalement recréé un nouveau fichier excel sous 97, et copié mes données et mes codes dans ce nouveau fichier. Mais ça ne marche toujours pas.
J'ai un message au moment de l'enregistrement : "Erreur système &H8000FFFF (-2147418113) Défaillance irrémédiable"
Si ça peut vous aider à me donner une réponse...
Ajouter un commentaire
Réponse
+0
moins plus
je pense avoir compris d'où venait le rapport d'erreur (et peut etre aussi du meme coup l'erreur irrémédiable...)
ca commence a fonctionner sous 97
Mon problème c'est qu'il n'accepte pas grand chose concernant les filtres automatiques (qui tournait sous 2003)
Ca me met souvent le message suivant : erreur d'éxé 1004 : la méthode Autofilter de la classe range a échoué.
...
Quelqu'un sait il pourquoi?
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

tu filtres sur quel type de données?

montre ton code.

A+
Ajouter un commentaire
Réponse
+0
moins plus
Re,

http://support.microsoft.com/kb/248670/en-us

ça parle d'autofilter er de date.

A+
lulu37- 25 sept. 2006 à 14:20
Bonjour,

Non il ne s'agit pas de dates, seulement de colonnes de texte.
Par exemple, à l'ouverture du classeur, les filtres éventuels sur toute lle tableau doivent être enlevés (pas enlevés au sens littéral, mais toutes les valeurs doivent être affichées)
Private Sub WorkBook_Open()
...
On Error Resume Next
ActiveSheet.ShowAllData
...
End Sub

ce code fonctionnait sous 2003 qu'il y ai des données filtrées ou non mais sous 97, ca me met un message d erreur et ca ferme l appli (uniquement s'il y a des données filtrées)
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

Non il ne s'agit pas de dates, seulement de colonnes de texte.
Par exemple, à l'ouverture du classeur, tous les filtres de la base doivent être enlevés (pas enlevés au sens littéral, mais toutes les valeurs doivent être affichées)
Private Sub WorkBook_Open()
...
On Error Resume Next
ActiveSheet.ShowAllData '=>bog'
...
End Sub

ce code fonctionnait sous 2003 qu'il y ai des données filtrées ou non mais sous 97, ca me met un message d erreur et ca ferme l appli (uniquement s'il y a des données filtrées)


à un autre endroit du programme (assistant recherche) :

Private Sub CommandButtonOK_Click()
'filtrage selon saisie sur assistant recherche'
If TextBoxF <> Empty Then Selection.AutoFilter Field:=6, Criteria1:="=*" & TextBoxF.Value & "*"
If TextBoxRF <> Empty Then Selection.AutoFilter Field:=4, Criteria1:="=*" & TextBoxRF.Value & "*"
If TextBoxMC <> Empty Then Selection.AutoFilter Field:=5, Criteria1:="=*" & TextBoxMC.Value & "*"
UserForm2.Hide
End Sub

là ça bog et rebog, ça ne fonctionne pas du tout, et je ne sais pas pourquoi...

encore un ?

un simple bouton bascule :
Private Sub ToggleButton1_Click()
If ToggleButton1.Value = True Then
ToggleButton1.Caption = "Refs Service"
Selection.AutoFilter Field:=1, Criteria1:="MAGASIN" '=>bog'

Else
ToggleButton1.Caption = "+ de références..."
Selection.AutoFilter Field:=1, Criteria1:="=" & Range("A1").Value
End If

End Sub


et toujours bog

voilà si ça peut t'aider à y voir plus clair
a+
Duena - 12 août 2009 à 18:02
Hello.

La méthode ShowAllData marche bien... à condition que la feuille soit déprotégée. Sinon, erreur 1004 sur ShowAllData.

Pour peut qu'on fasse un petit test avant, g trouvé ça, tout bête mais qui bogue pas :

With frmMaFeuil
    'si feuil protégée, enlever PROTECTION avec le mot de passe "dudule"
    If .ProtectContents Then .Unprotect Password:="dudule" 
   'ensuite, si 1 critère est déjà appliqué sur la feuille, désactiver filtre automatique 
    If .FilterMode = True Then .ShowAllData 
End With


'Y a plus qu'à reprotéger la feuille ensuite, si besoin.

Voilà. Ma proposition vient des années après, mais on ne sait jamais ;-)

D.
Ajouter un commentaire
Réponse
+0
moins plus
salut

en ce qui concerne Selection.Autofilter, ça ne convient pas, ca enlève les filtres, mon but est d'afficher toutes les entrées mais surtout pas d'enlever les filtres auto
j'explique (utilisé dans le cadre pro) 2 personnes ont la possibilité d'enregistrer ce classeur, toutes les autres sont en lecture seules
Donc possible que les 2 personnes en question oublient d enlever les filtres... d où la nécessité d'automatiser sous vb.

je ne comprend pas pourquoi, ils ne veut pas me défiltrer mes colonnes, est ce que c'est parce que j ai des colonnes cachées...apparemment non, d'ailleursd toutes mes procédures avec autofilter buggent à un moment donné.
Je ne comprend vraiment pas
si tu as une autre idée, elle sera la bienvenue

pour le reste, je vais voir ca demain...

Ludivine
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

tu partages ton classeur?

méfie toi, s'il y a des macros (certaines fonctions sont à surveiller ou à retravailler mais je ne sais plus lesquelles).

http://dj.joss.free.fr/reso.htm

A+
Ajouter un commentaire
Réponse
+0
moins plus
salut

il est seulement sur le réseau, mais pas de partage style modifs simultanées...

quoique tant que je n'ai pas résolu mon pb d'autofilter, il est inutilisable, snif
Ajouter un commentaire
Réponse
+0
moins plus
j'arrive à passer mes filtres sur le 1er pb rencontré tel que je l'ai inscrit voir item 6

le problème est réellement sur les ActiveSheet.ShowAllData

après avoir testé en affichant toutes mes colonnes, en enlevant mon visibledropdown=false sur un filtre auto

j'ai un peu regardé à droite à gauche sur internet , et mis en propriété du bouton de commande
TakeFocusOnClick = False (je sais meme pas à quoi ca sert ...lol)
j'ai toujours mon bug , voici les différents petits trucs que j'ai testé :

ActiveSheet.ShowAllData

si données filtrées=>affiche tout (ca c'est cool lol) et message d erreur + fermeture excel (là ça l'est déjà moins)
si données non filtrées => erreur exe 1004

Donc :
On Error Resume Next
ActiveSheet.ShowAllData

'ou'

If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData

si non filtrées => il ne se passe rien, c 'est déjà mieux

en tout cas, ça ne résout toujours pas mon problème
personne n'a jamais eu ce genre de pb sur excel 97 ? la méthode est certainement mauvaise ?
Ajouter un commentaire
Réponse
+0
moins plus
bonsoir,

je n'utilise pas showalldata d'habitude.

je me sers de autofilter pour retirer (et là ça fait la même chose que showalldata) et pour remettre.

c'est peut-être une piste. (je teste le filtermode et je joue de l'autofilter)

je crois même que le test du filtermode n'est pas absolument nécessaire (pas sûr quand même)

A+
Ajouter un commentaire
Réponse
+0
moins plus
je n'ai pas trouvé de solutions miracles, en pas à pas, en reprenant sous excel 97, le fichier a fini par être utilisable...
bref, ne jamais créer des macros sous 2003 si c'est pour une utilisation sous 97 ! lool
JVDo, merci pour tes réponses
Ajouter un commentaire
Ce document intitulé « pb VERSION excel vb svp » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?