Extraire information base de données pour insérer dans signets word

Fermé
Al.09 - 13 août 2015 à 19:35
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 - 2 sept. 2015 à 18:21
Bonjour,

J'enregistre quotidiennement des produits suivis de leurs N°LOT ainsi que d'autres informations (date, etc.). Informations enregistrées de façon linéaire les unes en dessous des autres. une ligne = 1 N°lot et ses données.
Ceci constitue donc ma base de données.

Maintenant, pour certain N°lot (=ligne) je suis amené à extraire les données, les insérer dans un format words pour en faire un document d'enregistrement.
je fais du C/C d'informations.
L'opération est répétitive, chronophage et source d'erreurs.

Je sais faire :
- extraire des données d'une base de données par recherche (formules cellules et Macro)
- insérer des données sous word via des signets à l'aide d'une macro.

Je ne sais pas faire (= mon pb) :
Vu que l'opération décrite n'affecte que des lots isolés, je me demande si le peux appeler des données avec le critère surligné...??? autrement dit, puis-je surligner la ligne intéressée puis cliquer sur un bouton pour exécuter une macro?
Est-ce que le "surlignage souris" est un critère de sélection?

J'avoue être perdu dans le cheminement.

Merci à tous ceux qui pourrons m'éclairer.

Alex.
A voir également:

4 réponses

Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
15 août 2015 à 22:15
Bonsoir à tous
Autre proposition, si j'ai bien compris.
Le surlignage souris n'est pas une sélection puisque il n'y a pas d'action, il faut donc en créer une, alors je vous propose ceci.
-Dans une cellule contenant des données (texte, nombre , mixte..) , sélectionnez la cellule, surlignez le terme qui vous intéresse et mettez lui la couleur de police ROUGE, puis cliquez sur le bouton. La zone surlignée est isolée et vous pouvez vous en servir pour vos recherches.
Faites des essais avec du texte dans n'importe quelle cellule.
https://www.cjoint.com/c/EHpukL0Danw
Cdlt
0
voici mon tableur http://www.cjoint.com/c/EIbovMNsx6Q
0
Bonjour et merci à vous pour vos réponses,

PHILOU10120, dis moi si je me trompe, mais le code proposé est pour une cellule "fixe" (Ligne "A11").
C'est une réflexion à première lecture, je vais tout de même prendre le temps de décrypter et de tester !

Frenchie83, je trouve ton élément de réponse très astucieux... Evident lorsqu'on le lis mais là est toute l'astuce ^^.
Maintenant, avec cette version, il faut que je trouve la formule pour extraire les données qui sont uniquement écrites en ROUGE.
Je vais passer par une autre feuille avant de lancer les données sous word via les signets.

Je résume : je sélectionne avec ma souris la ligne contenant les infos à extraire. je mets la police en rouge. soit par une formule soit par macro, ces données (en rouge) seront retranscrite dans une autre feuille reprenant uniquement les données voulu dans un petit tableau...
Et après je m'occupe du reste pour retranscrire sous Word.

Je reviens vers vous dès que j'ai avancé.

Encore merci à vous et à la communauté.
Cdlt.
0
PHILOU10120 Messages postés 6393 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 9 octobre 2024 810
17 août 2015 à 21:22
la cellule A11 contient la formule avec la fonction EQUIV qui permet de trouver la ligne à imprimer mettre la valeur rechercher en A10 dans mon exemple et la fonction equiv vous donnera la ligne ou ce trouve cette information
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
18 août 2015 à 05:50
Bonjour
Petites précisions
"Maintenant, avec cette version, il faut que je trouve la formule pour extraire les données qui sont uniquement écrites en ROUGE".
Dans mon code, les données en rouge sont déjà extraites et sont dans la variable "Element", je vous ai fait ressortir le contenu de cette variable dans un message en sortie de programme parce que j'ignore la suite que vous allez lui donner, mais elle est utilisable directement pour l'usage que vous devez en faire. Il n'y a donc pas de formule ou de code supplémentaire à rajouter pour l'extraire à nouveau. Il ne vous reste qu' à utiliser l'instruction "FIND Element" pour localiser l'élément à rechercher et à récupérer les données correspondantes et à coller dans word.
Cdlt
0
Bonjour PHILOU10120 & Frenchie83,

Je vous ai fait suivre en lien le tableur sur lequel j'essais d'extraire les données dans une ligne prise au choix.
J'ai testé vos solutions et j'arrive pas à obtenir quoi que ce soit. Je dois mal m'y prendre. Pour cela, si vous pouviez prendre 2 minutes pour regarder ce tableur ce serait vraiment cool.

Tenez moi au courant.
Encore merci pour vos efforts.

Alex.
http://www.cjoint.com/c/EIbovMNsx6Q
0
Frenchie83 Messages postés 2240 Date d'inscription lundi 6 mai 2013 Statut Membre Dernière intervention 11 août 2023 338
2 sept. 2015 à 18:21
Bonsoir
Sélectionnez la ligne de votre choix et cliquez sur le bouton
https://www.cjoint.com/c/EIcquZ1RP1w
Cdlt
0
PHILOU10120 Messages postés 6393 Date d'inscription lundi 16 avril 2012 Statut Contributeur Dernière intervention 9 octobre 2024 810
15 août 2015 à 11:22
Bonjour


Voici un bout de code pour copier une ligne dans une base

'sélectionne et copie une ligne de la colonne A à T
Sheets("Base").Select
Dim Ligne As Long
Ligne = Range("A11")
Sheets("Base").Range(Cells(Ligne, "A"), Cells(Ligne, "T")).Copy
Sheets("votre feuille").Select
Application.Goto Reference:="votre cellule"
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False

la cellule A11 contient la formule suivante

=SIERREUR(EQUIV($A$10;$A$1:$A$200;0);"")

pour trouver le numéro de la ligne à copier dans la base

Vous adaptez à vos besoins

-1
http://www.cjoint.com/c/EIbovMNsx6Q
0