Améliorer une macro

thomashty

XLDnaute Occasionnel
Bonjour à tous, je souhaiterais rendre plus rapide une macro, je m'explique :

Il y a une "page d'accueil", aller dans "ajouter un document", MDP : "toto".

Ensuite vous avez une feuille "liste de documents" qui s’ouvre, qui est en réalité une base de données,

ET vous avez une feuille "zone de recherche" qui vient chercher dans la base de donnée à travers la colonne "description".

Mon problème est : il n'y a que 40 documents dans cette BDD et le système de recherche a déjà une latence... auriez vous une alternative pour le rendre plus rapide ?

Merci de votre aide

Thomas
 

Pièces jointes

  • Outil à modifier.xlsm
    143.5 KB · Affichages: 79

thomashty

XLDnaute Occasionnel
Re : Améliorer une macro

Dranreb,

Quel travail de dingue ! Je vous avoue ne pas avoir tout compris à la programmation !!

Pouvez vous me détailler un peu ? J'ai l'impression que vous avez programmé mon formulaire de saisie de document plutôt que ma barre de recherche ?

Merci pour votre temps et votre aide
TH
 

Dranreb

XLDnaute Barbatruc
Re : Améliorer une macro

Oui, oui, tout à fait. Normalement on laisse complètement tomber la feuille de recherche, c'est l'UserForm qui sert à tout.
C'est pourquoi j'insiste pour y ajouter une ListBox si les ComboBox ne suffisent pas à isoler un document.
 

Dranreb

XLDnaute Barbatruc
Re : Améliorer une macro

En attendant j'ai quand même ajouté le versement en feuille Zone de recherche, qu'il serait facile de transformer en versement en ListBox.
 

Pièces jointes

  • CBxLiéesThomashty.xlsm
    256.6 KB · Affichages: 21

thomashty

XLDnaute Occasionnel
Re : Améliorer une macro

D'accord je vois, vous voulez utiliser le formulaire comme système de recherche c'est pas bête du tout.

Donc l'idée serait d'en faire une copie dans la feuille ZDR, car la feuille LDD est uniquement destinée à mon usage et sert à contrôler et alimenter la BDD..

J'ai peur que cela limite un peu l'utilisateur dans sa recherche, c'est tout de même très intéressant je vais y réfléchir !
 

thomashty

XLDnaute Occasionnel
Re : Améliorer une macro

@thebenoit

On constate qu'en modifiant la colonne "Type de document" le lien hypertexte se voit changer alors qu'il n'y a pas lieu d'être il devrait juste se copier par rapport à comment il a été saisie dans LDD

Thomas
 

Pièces jointes

  • Améliorer macro.xlsm
    193.5 KB · Affichages: 25
  • On entre le doc.jpg
    On entre le doc.jpg
    68.3 KB · Affichages: 25
  • On le retrouve (lien fail).jpg
    On le retrouve (lien fail).jpg
    22.8 KB · Affichages: 20
  • Début de piste...jpg
    Début de piste...jpg
    18.1 KB · Affichages: 22

Dranreb

XLDnaute Barbatruc
Re : Améliorer une macro

Bonjour.

Pourquoi ne retenez vous pas la solution de la recherche par l'UserForm ?
Pour répondre au #31, tous les modules de service sont abondamment documentés de commentaires descriptifs ou guides d'utilisation pour chaque évènement, propriété, méthode ou procédure indépendante.
 

thebenoit59

XLDnaute Accro
Re : Améliorer une macro

En fait ça n'a rien à voir avec le format, une erreur dans le code plutôt.
Modifie la ligne suivante :

Code:
.Hyperlinks.Add Anchor:=.Cells(16, "G"), Address:=tListe(1)

par
Code:
.Hyperlinks.Add Anchor:=.Cells(16, "G"), Address:=tListe(7)
 

thomashty

XLDnaute Occasionnel
Re : Améliorer une macro

Excellent ça fonctionne, merci

Dernière chose, sauriez vous comment faire pour que quand je réouvre mon fichier, seul la "Page d'accueil" soit visible ? Car quand j’enregistre avec plusieurs onglet ouverts, ils sont visibles à l'ouverture...

PS: j'ai ajouté ce code comme vous me l'avez suggéré, est-ce bon ?

Code:
Option Explicit

Public TableauListe(), InitFait As Boolean

Public trouver As Boolean
 

Dranreb

XLDnaute Barbatruc
Re : Améliorer une macro

Vous êtes libre de taper ce que vous voulez dans CBxDescription, non ?
Vous pouvez aussi ajouter d'autres ComboBox, pour le nom du document par exemple (juste un CL.Add en plus dans l'UserForm_Initialize)
Contrairement à ce que tout le monde croit, une ComboBox ce n'est pas fait pour choisir dans sa liste, mais pour y taper quelque chose. La liste c'est juste pour finaliser le choix à partir du moment où on ne sait plus quoi taper.
Il pourrait aussi être ajouté une ComboBox supplémentaire réservée à un mot faisant partie de la description. Là aussi la frappe proposerait un mot commençant par ce qui est tapé, et on pourrait choisir pour finir le mot dans la liste.
 
Dernière édition:

thomashty

XLDnaute Occasionnel
Re : Améliorer une macro

Vous êtes libre de taper ce que vous voulez dans CBxDescription, non ?
$Vous pouvez aussi ajouter d'autres ComboBox, pour le nom du document (juste un CL.Add en plus)

Oui mais dans la CBxDescription les caractères doivent se suivre, ce que je ne trouve pas pratique et limitatif.

Exemple: l’utilisateur cherche de la documentation sur les "appareils d'appuis en élastomère fretté"
si il veut accéder au document qui a pour description : Guide du SETRA sur les appareils d'appuis en élastomère fretté , il va falloir qu'il tape précisément les mots les uns à la suite des autres avec les pluriels, les apostrophes...

Alors qu'instinctivement il aura plutôt tendance à taper "appui fretté"

Je ne sais pas si vous voyiez ce que je veux dire ?

C'est pourquoi mon outil de base cherchait caractère par caractère dans la colonne description. Ce qui était relativement lent, d'où la présente discussion.
 

Discussions similaires

Réponses
15
Affichages
496
Réponses
6
Affichages
333

Statistiques des forums

Discussions
312 273
Messages
2 086 702
Membres
103 376
dernier inscrit
marionromeo