Stocker dans un Dossier tous les Composants de ses Applis pour recherches ultérieures

YANN-56

XLDnaute Barbatruc
Bonjour à ceux qui passeront par là,

Voici le code de récupération dans une feuille d'un Classeur Fermé:
Code:
Private Sub CommandButton1_Click()
FICHIER = ThisWorkbook.Path & "\SOURCE.xls"
NOMFEUILLE = "CODE"
    
Set Cn = New ADODB.Connection
    
 With Cn
  .Provider = "Microsoft.Jet.OLEDB.4.0"
  .ConnectionString = "Data Source=" & FICHIER & ";Extended Properties=Excel 8.0;"
  .Open
 End With
    
texte_SQL = "SELECT * FROM [" & NOMFEUILLE & "$]"
    Set Rst = New ADODB.Recordset
    Set Rst = Cn.Execute(texte_SQL)
    Worksheets("RECUP").Range("A1").CopyFromRecordset Rst
    
Cn.Close
Set Cn = Nothing
End Sub
Je tente en vain, depuis un grand moment,
à transporter directement les données copiées dans le TextBox de l'USF, sans passer par la Feuille.
(Ce serait perdre une grande partie du temps gagné avec la méthode ADO)

L'arrière-pensée est de charger les "Tag" des Items d'une ListView de cette façon.
Je n'ai pas mis ce Control dans mon USF, car je sais qu'il pose soucis à certains.
Le Bouton 2 pourra servir de réceptacle pour les tests, car il en sera évidemment de même pour ses Items.

Merci, par avance, à qui saura m'aguiller........
Si ce n'est de me dire que ce que je cherche à faire est impossible!

Amicalement,

Yann
 

Pièces jointes

  • ASPIRATEUR.xls
    38.5 KB · Affichages: 122
  • SOURCE.xls
    20 KB · Affichages: 151
  • SOURCE.xls
    20 KB · Affichages: 156
  • SOURCE.xls
    20 KB · Affichages: 160
Dernière édition:

fhoest

XLDnaute Accro
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Re salut Yann56 & tous.

Voici ton fichier en retour avec une modification sur la recherche et la structure:
je te joins le fichier modifié + uniquement le dossier combo.
tu comprendra pourquoi car je n'ai pas modifié tous les dossiers

remarque j'ai bien galérer mais j'ai réussit ce que je voulais faire et j'ai appris beaucoup de chose.:rolleyes:
A bientôt.
 

Pièces jointes

  • ASPIRATEUR_3_fhoest.xls
    79.5 KB · Affichages: 120
  • COMBOBOX.zip
    36.1 KB · Affichages: 100
  • COMBOBOX.zip
    36.1 KB · Affichages: 100
  • COMBOBOX.zip
    36.1 KB · Affichages: 104

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Bonjour Fred, et à ceux qui passeront par ici,

J'ai regardé attentivement ton Fichier et apprécié le boulot que tu as effectué.:)
Tes explications relatives aux "Champ" sont très instructives.

Mais ici, je n'ai pas besoin de procéder façon "Access" car il n'y aura jamais qu'une colonne remplie.

Rappel: La création des Classeurs et leur remplissage sont issus d'un autre USF absent ici.
(Il ne devrait jamais avoir d'intervention manuelle dans le Dossier "MES_CODES")

La finalité est de travailler sur des Fichiers ".txt" moins lourds, et de ce fait facilement transportables.
(Je n'ai pas encore tenté l'adaptation.......... Hum! Pépé va encore ramer! :p)

Dans mon précédent exemple, j'avais pensé ne changer la ListView de l'USF "VISUALISATION"
qu'avec les Classeurs où existait un Mot Choisi.......
J'ai abandonné, car de disposer de tout les contenu de la bibliothèque peut être souhaitable pour la suite.
La méthode "A.D.O." est si rapide, que l'on peut se le permettre (Même, je pense, avec un millier de Fichiers)

Je joins mon stade actuel.
1) En cliquant sur l'œil, on visualise la liste des enregistrements où l'on trouve un mot choisi
(Même partiel en Minuscules ou Majuscules)
2) En cliquant sur la ListView on a des renseignements qui pourront être aussi exploités par la suite.

J'ai ajouté l'évènement Clic sur l'entête de cette dernière qui inverse son tri Alphabétique.

Pour ceux qui voudront s'amuser à tester:
Le Dossier "MES_CODES" déposé dans un précédent post est toujours valable,
et à mettre dans le même répertoire que "ASPIRATEUR_05_05"
Ne pas oublier que le but final est de venir copier tel ou tel code dans sa propre bibliothèque
lors de la construction d'une autre application. (Voire s'en servir pour aider sur XLD)

Amicalement, et à suivre.......

Yann
 

Pièces jointes

  • ASPIRATEUR_05_05.xls
    108.5 KB · Affichages: 108

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Re:
Merci encore Fred!:):):)
Au bénéfice de ton exemple, je viens de constater qu'il est indispensable que la Cellule (1,1) soit remplie.
Sinon la deuxième ligne est prise comme entête de Champ, et zappée lors de l'initialisation du TAG.

Superbe cette entraide........ Je me régale!

Amicalement,

Yann

P.S. Je vais voir à incorporer de l'USF qui enregistre les codes des applis existantes
 

fhoest

XLDnaute Accro
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Re , mais de rien c'est avec grand plaisir,
merci a toi de partager également ton projet,sache que je découvre beaucoup de chose.
Merci encore Fred!:):):)
voici un code qui pourrait être utile, (une partie du code ci dessous est destiné a spliter une série de mots qui pourrait être utile dans d'autres style de recherche notamment sur un style que j'utilise sur un de mes projets)
Bon cessons de bavarder voici le code:
Code:
Private Sub Image1_Click()
RETABLIR_LISTE
Dim RECHERCHE_OK As Boolean
'********************************* pour chercher jusqu'à 10 mots séparés par (1 espace) ***************************
' utilisation de deux tableaux
' ***************************************************************************************************************
' ***************************************************************************************************************
Dim tableau(10)
For i = 0 To 9
tableau(i) = Split(Me.TextBox2.Text, " ", -1, vbTextCompare)
Next
Dim texte As Variant

For j = LBound(tableau) To UBound(tableau) - 1
texte = tableau(j)
Next j
For j = 0 To UBound(texte)
For i = 1 To Me.ListView2.ListItems.Count
     'If InStrRev(Me.ListView2.ListItems(i).Tag, Me.TextBox2.Text, -1) <> 0 Then
     If InStrRev(Me.ListView2.ListItems(i).Tag, texte(j), -1) <> 0 Then
     RECHERCHE_OK = True
            Me.ListView2.ListItems(i).ForeColor = &HC00000
            Me.ListView2.ListItems(i).Bold = True
            Me.ListView2.ListItems(i).ListSubItems(5).Text = 1
    End If
Next i
Next j
If RECHERCHE_OK = True Then
With Me.ListView2: .SortKey = 5
.SortOrder = lvwDescending: .Sorted = True
End With
Else
 MsgBox "Le Mot : " & Me.TextBox2.Text & " n'a pas été trouvé "
 End If
End Sub

Au plaisir et a +
 

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Bonjour Fred, et à ceux qui passeront par là,

Actuellement, la recherche peut aussi se faire avec une chaîne de caractères.
Mais, comme dans ta suggestion, le respect du nombre d'espaces est incontournable.

Tu pourras tester avec, par exemple: "Site inexistant" ou "Site inexistant"
(Sans guillemet, bien entendu, mais avec un espace de trop pour ce dernier)

Avec cet espace de trop; ton code, me sélectionne tous les codes répertoriés!!!

Ton idée amène cependant à penser à une amélioration intéressante:
=> Une recherche selon 1, 2, 3 ou plus de critères.
Pour moi; cela impliquerait avoir autant de TextBoxes de saisie et jouer avec les "or"
si l'un des mots est trouvé, ou les "and" impliquant la présence des 2 ou 3.
Mais est-ce bien utile, car ils pourraient se trouver dans des lignes différentes.

Je viens de découvrir l'utilisation des tableaux virtuels grâce à Paritec, mais je suis balbutiant!
Cette méthode permettrait, sans doute, de venir sélectionner la ligne concernée dans le TextBox1

L'intégration de l'USF d'enregistrement des codes présents dans diverses applis avance bien.

Le temps de peaufiner l'ensemble; je te le ferai suivre.

Amicalement,

Yann

P.S. Je te suggère que nous continuons par mail...... Ce sera plus facile dans les échanges.
Au regard du peu d'intervenants, ou visiteur apportant leurs commentaires ou suggestions,
on ne va spolier personne.:)
 

fhoest

XLDnaute Accro
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Re,
Oui Yann56, tu as raisons j'avais connaissance du problème mais je suis sur que tu va trouver la solution sans devoir passer par plusieurs textbox lol (MP)
le problème de selection dans une textbox ne peu pas se faire enfin pour ce que je comprend
car lorsque l'on change une propriété elle est liée a toute la textbox pour pouvoir faire ceci il faut utilisé un autre contrôle genre listview je pense que tu le connais assez bien ,il en va de même pour les fichiers text

Actuellement la recherche peut se faire sur une chaine de caractère
Oui c'est vrai mais c'est la chaine complète qui est tester ,avec la solution que je propose c'est du mot à mot


Allez au plaisir de continuer
A bientôt
Fred.
 
Dernière édition:
C

Compte Supprimé 979

Guest
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Bonjour à vous

Juste comme ça en passant ;)

Un solution possible pour le problème d'espaces
Code:
Public Function ReplaceSpace(Mot As String)  Dim Ind As Integer
  ' Pour 20 espaces
  For Ind = 20 To 2 Step -1
      Mot = Replace(Mot, Space(Ind), " ")
  Next Ind
  ReplaceSpace = Mot
End Function


Sub test()
  MsgBox ReplaceSpace("Ceci      est un essai")
End Sub

A+
 

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Re mon ami Fred,

Je pense qu'en l'instant il n'est pas indispensable de focaliser sur le nombre d'espaces saisis.
Car si l'utilisateur n'est pas trop con, il va, de lui-même, piger son erreur, et relancer sa recherche.

Le TextBox2 gardant la valeur initiale entrée, la rectification sera aisée.
La multiplication des essais est permise sans risque de plantage.

Je garde cependant sous le coude l'adaptation que tu proposes, et l'intègrerai certainement.

Pour le coté ludique que doit rester ce boulot VBA,
je m'amuse actuellement à rendre sympas et conviviales les boites de dialogue.

Nonobstant le bien fondé du partage sur XLD:
Comme j'ai ton adresse mail perso, et que tu as la mienne, je préfèrerais communiquer seulement par ces biais.

Dés que la nouvelle présentation avec ses composants actualisés sera prête, je te la soumettrai.

De la discussion jaillit la lumière, et je ne doute que nous serons bien éclairés.
(La porte restant bien entendu ouverte au visiteur qui se manifesterait dans la présente discussion)

Amicalement,

Yann
 

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Désolé Bruno,

Je n'avais pas vu ton Post!

Comme d'hab; tu as le "Mot juste:):):)".

Sans doute, si je t'avais lu avant, le contenu de ce que je viens d'écrire aurait été différent!!!

Merci à toi, il fait du bien de ne pas être seul,
et surtout de se sentir accompagné par une compétence telle que la tienne.

Amicalement,

Yann
 
C

Compte Supprimé 979

Guest
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Re,

Désolé Yann ;)

Il arrive parfois (voir souvent) que je ne m'immisce pas dans les fils qui sont très bien parti
Comme celui-ci que tu mènes d'une main de Maître (et je pèse mes mots ;))

Mais effectivement, du coup, on peut se sentir seul ....
Ne t'inquiète surtout pas ... il y a toujours des "rodeurs" :)

Quant à
Nonobstant le bien fondé du partage sur XLD:
Comme j'ai ton adresse mail perso, et que tu as la mienne, je préfèrerais communiquer seulement par ces biais.
Dés que la nouvelle présentation avec ses composants actualisés sera prête, je te la soumettrai.
Nous comptons bien que tu nous soumettes la version finale, surtout penses-y :eek:;)


Au plaisir

PS : J'ai mon mail dans mon profil (si besoin)
 
Dernière modification par un modérateur:

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Bonsoir ou Bonjour suivant l'heure,

Je dépose donc la dernière version ici. (Qui n'est cependant pas finalisée)
(Comme me l'a laissé entendre Bruno: De le faire en M.P. égoïste n'est pas la meilleure solution)

D'autant que XLD est un Forum de partage.

Ce partage pourrait aussi être:
1) De savoir si cette bidouille peut être utile à quelqu'un, et mérite d'être poursuivie.
2) D'engranger suggestions, simplifications et améliorations. (Voire rapidité)
3) D'être éventuellement aidé quand je permuterai vers un stockage en format ".txt",
car là, je vais ramer un max avec A.D.O.!... (Peut-être même que cela ne soit pas réalisable)

Rappel: Je n'ai pas encore adapté le "GetDetailsOf" pour les versions autres que XP, où les
index d'Items ne sont pas les mêmes......
Il n'y a pas trop longs à faire si cela est demandé. (Cf. Article 1)


Amicalement

Yann
 

Pièces jointes

  • ASPIRATEUR_09_05.xls
    488.5 KB · Affichages: 142
  • MES_CODES.zip
    51.7 KB · Affichages: 60
  • MES_CODES.zip
    51.7 KB · Affichages: 62
  • MES_CODES.zip
    51.7 KB · Affichages: 63
C

Compte Supprimé 979

Guest
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Salut Yann et merci infiniment de respecter l'idée de ce forum

un seul mot pour ton fichier : GÉNIAL a3_isa.gif

Je vais le mettre dans ma logithèque et le tester de fond en comble :p;)

Encore mille fois merci pour ce superbe travaille et se partage
Sera peut-être à mettre dans la zone téléchargement

A+
 

Pièces jointes

  • a3_isa.gif
    a3_isa.gif
    9.5 KB · Affichages: 146
  • a3_isa.gif
    a3_isa.gif
    9.5 KB · Affichages: 139

GeoTrouvePas

XLDnaute Impliqué
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Bonjour,

Je passais un peu par hasard sur le sujet et que vois je ? ............

Une sublime production made in Yann qui m'a l'air très intéressante et surtout incroyablement pratique à utiliser.

Alors tout d'abord mes félicitations pour ce travail et mes plus sincères remerciements car je pense que ça va m'être d'une grande utilité.

Enfin...... quand ça voudra marcher !
Je te rassure, ça ne vient pas de ton application mais de mon poste de travail. Apparemment il n'apprécie pas du tout tes listviews :

impossible de charger le objet car il n'est pas disponible sur cette machine
(la faute est authentique ^^)
 
Dernière édition:

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Merci Bruno,

Il y a des mots qui réchauffent le cœur et qui sont d'une motivation incommensurable.

Just' un exemple de l'utilité éventuelle de ce projet:
- Sachant avoir déjà fouiné et bossé sur la transcription d'Excel à TXT,
j'ai demandé à Wind de faire une cherche sur mon disque, et mon stockage en externe.

Résultat après j'ai retrouvé une bidouille qui fonctionne mais le code est à vomir!
Je l'aurais certainement stocké, mais avec comme commentaire:
"Pas bouffable et à n'utiliser que si indispensable".... J'aurai gagné du temps!

Avant, cependant, de me lancer dans sa mise en place; j'ai regardé le poids des Fichiers
dans le Dossiers "MES_CODES" ... Maxi 20 ko pour 93 lignes...Donc: Pas la peine de s'enquiquiner!!!

Je vais voir maintenant à ajouter l'exploitation de PDF comme ceux que l'on peut télécharger sur
un autre Site bien connu,
ainsi que les liens relatifs à des discussions sur XLD que l'on aimerait retrouver rapidement.
Et c. suivant l'imagination et autres suggestions qui pourraient se manifester.

Encore Merci pour ton regard sympa.:):):)

Amicalement,

Yann

P.S. Je vais aussi mettre de l'ordre dans ma procédure qui est encore du "Tout-venant" à nettoyer.:p
 

YANN-56

XLDnaute Barbatruc
Re : Copie Données dans une Feuille via "A.D.O" = Ok, mais dans un TextBox = Echec!

Bonjour GeoTrouvePas,

Ton mot me fait aussi bien plaisir.:)

Mais certainement moins cette affaire de ListView!!! :mad:

Il y a une caisse de discussions concernant ce problème dans le Forum.
J'ai de mon coté une solution si tu es en Office 2003, mais seulement dans ce cas.

Amicalement, et à te lire,

Yann
 

Discussions similaires

Statistiques des forums

Discussions
314 628
Messages
2 111 336
Membres
111 104
dernier inscrit
JEMADA