exporter des données en colonnes depuis des données en ligne

arno38000

XLDnaute Nouveau
Bonjour

J ai parcouru pas mal de post sur ce forum afin de trouver des infos sur ma recherche. j arrive à trouver quelques pistes mais mon niveau de debutant me bloque rapidement.

Voila ce que je tente de réaliser. j ai essayé d utiliser l enregistreur de macros mais sans trop de resultat.

Je possede un tableau dans un onglet (B), avec des données simples du type :
NOM Prenom Telephone Mail etc...
Ces données sont en lignes.

Je dois pouvoir exporter ces données (idéalement grâce à un bouton), ligne par ligne, dans un second onglet (A), mais cette fois en colonne.
Pour corser le tout, je dois pouvoir indiquer l'emplacement dans ce nouvel onglet (A) ou les données doivent se placer (doivent etre exportées). Pour être plus précis, les données de la ligne 1 dans l onglet (B) se placeront dans l onglet (A) à partir de la case C5; les données de la ligne 2 se placeront dans l onglet (A) à partir de la case D17.

Pourquoi l exportation via un bouton; tout simplement nous sommes deux à utiliser ce document et cela permet d automatiser l exportation de façon transparente pour un personne qui est encore bien moins doué que moi en informatique !

J'hésite entre crier A l aide ou au secours !
Donc si vous aviez une idée de comment résoudre mes recherches, un énorme merci.
De mon coté je cherche, et si j arrive à trouver, je partage.

Bonne journée
 

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

Juste une autre question.
J ai compris comment faire pour deplacer la cellule de selection "du choix" de haut en bas, mais pas de droite à gauche. Pourtant, il me semble bien modifier la destination ("$D$21" Or [D21] = "" Then Exit Sub).
Idem si je desire mettre ma liste déroulante avec votre "option" de lien dans deux cellules justifiées, cela ne se passe pas correctement. Je peux palier à ce "probleme" en élargissant la colonne, mais par curiosité, quelle variable "bloque" ou empêche de déplacer ou de mettre dans deux cellules justifiées. S agit d une particularité de votre "option" "de lien vers" ?
 

job75

XLDnaute Barbatruc
Re : exporter des données en colonnes depuis des données en ligne

Bonsoir arno38000,

Pas compris ce que vous dites.

Avec ce code :

Code:
If Target.Address <> "$E$13" Or [E13] = "" Then Exit Sub
la macro s'arrête si la cellule modifiée n'est pas E13 ou si E13 est vide.

La recherche se fait plus bas avec la méthode Find (voir l'aide VBA).

A+
 

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

"Pas compris ce que vous dites."

cela a le merite d etre clair ! ;) effectivement en me relisant ce n est pas tres clair !

J essayais de comprendre pourquoi si je justifais E13 et D13 pour ne former plus qu une seule cellule, pourquoi cela ne fonctionnait plus.

Ok pour la fonction FIND (vu dans VBA)

Sinon, j ai modifié votre code pour placer ma liste déroulante dans D21
"$D$21" Or [D21] = "" Then Exit Sub mais cela ne fonctionne pas. J essayais aussi de comprendre.

A priori je créé correctement ma liste déroulante avec la bonne destination (=basenoms).

Je vais encore chercher.

Bonne soirée
 

job75

XLDnaute Barbatruc
Re : exporter des données en colonnes depuis des données en ligne

Re,

C'est le mot justifié que je ne comprenais pas.

J'ai fusionné D13 et E13 sans problème.

Fichier (2bis).

A+
 

Pièces jointes

  • base fichier(2bis).xls
    245 KB · Affichages: 72

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

Bonjour

J ai essayé de modifier le code pour faire une recherche (via le menu déroulant de la feuille accueil) sur plusieurs feuilles (base de données, base de données 2, base de données 3) "voir mon fichier joint"
Je précise, J ai essayé ! mais cela ne marche pas.
C est possible ou suis je obligé de faire une recherche spécifique par feuille ? (pour resumer, 3 menus déroulants sur la page d acceuil.)

Bonne soirée
 

Pièces jointes

  • Copie de base fichier3.xls
    240 KB · Affichages: 66

job75

XLDnaute Barbatruc
Re : exporter des données en colonnes depuis des données en ligne

Bonjour arno38000,

J'aimerais bien que quand je donne une réponse (mon post #34) vous accusiez réception.

Maintenant, novice en VBA, vous voulez compliquer, alors tant pis pour vous :p

Il y a donc 3 feuilles Base donnees, on pourrait écrire 3 macros Exporter1 Exporter2 Exporter3.

J'ai préféré garder une seule macro Exporter, mais elle est paramétrée.

Fichier joint.

A+
 

Pièces jointes

  • base fichier(3).xls
    261 KB · Affichages: 70

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

Bonsoir
Comme je le fais à chaque fois, avant de vous repondre je test et je cherche. De mon coté je ne sais pas pourquoi mais je n arrive pas à creer une liste déroulante sur deux cellules justifiées. Donc tant que cela ne fonctionne pas je ne valide pas que j ai compris. Voila pour ma reponse..
Concernant votre dernier fichier, je trouve l idée tres tres bonne. Je vais voir si je peux "l adapter" à mon idée. Dans tout les cas j etais aussi parti sur l idée de faire une liste de choix par base de données, c est plus simple pour ce que je veux faire, et surtout je n arrive pas à realiser un "code" qui fonctionne et qui lance une recherche sur les 3 bases. ("Débogage" est mon ami).
Mais si je trouve je vous mets le fichier rapidement.
Bonne soirée et encore merci
 

job75

XLDnaute Barbatruc
Re : exporter des données en colonnes depuis des données en ligne

De mon coté je ne sais pas pourquoi mais je n arrive pas à creer une liste déroulante sur deux cellules justifiées.

Bon c'est votre problème, mais enfin, est-ce que mes fichiers des posts #34 et #36 fonctionnent chez vous ???

Et que voulez-vous dire par "justifiées" ??? Ici ça n'a pas de sens...

A+
 

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

oui ils fonctionnent.
La seul chose c est que si j ouvre un nouveau classeur, et que je tente de reproduire une liste déroulante du meme type cela ne fonctionne pas. Je fais vraisemblablement des erreurs ou une mauvaise manip. Je vais les trouver ce n est pas le probleme.
Le mot "Justifié" n est pas le bon (effectivement). Je voulais dire "Fusionner".

Bonne journée
 

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

Bonjour à toutes et à tous

Mon projet avance doucement !
J ai un nouveau probleme, à savoir protéger les feuilles de mon classeur.
Si je demande de proteger la 1ere page (acceul), j arrive à autoriser que les listes déroulantes soient fonctionnelles.
Par contre si je protege la page "export" cela bloque les macros et je passe en "débogage" avec en jaune la ligne suivante
"F2.Rows("2:" & F2.Rows.Count).Delete 'RAZ"
C est normal car si j ai bien compris cette ligne efface certaines données présentes sur la page d export.
Faut il que je modifie le code de job75, ou il s agit d un probleme d options de protection ?
J ai essayé plusieurs solutions mais je suis toujours bloqué.
Une idée ?

le fichier en piece jointe à comme mot de passe pour toutes les protections excel

Merci de votre aide.
 

Pièces jointes

  • Copie de base fichier(3).xls
    258.5 KB · Affichages: 80

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

Bonjour et merci
Cela fonctionne parfaitement.
par contre job75 avait mis dans la macro de recherche via les listes deroulantes un pointage en direction de la feuille export, qui avait la particularite de placer en jaune (dans export) le nom choisi dans la liste deroulante.
avec le morceau de code piur verouiller la feuille cetteboption ne fonctionne plus et je passe a nouveau en debogage
.interior.colorindex = xlnone

Une idee ?
 

job75

XLDnaute Barbatruc
Re : exporter des données en colonnes depuis des données en ligne

Bonjour arn038000, salut Yaloo,

Il faut donc aussi déprotéger/protéger dans la macro de la feuille Accueil :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [D13,G13,J13]) Is Nothing Or Target.Count > 1 Then Exit Sub
If Target = "" Then Exit Sub
Dim cible As Range
Exporter Sheets(Target(0, 1).Text) 'la cellule du dessus indique la feuille
Sheets("export").Unprotect "mdp" 'votre mot de passe
With Sheets("export").[C:C,G:G]
  .Interior.ColorIndex = xlNone
  Set cible = .Find(Target, , xlFormulas, xlWhole)
End With
If cible Is Nothing Then Me.Activate: GoTo 1
cible.Interior.ColorIndex = 6 'jaune
Application.Goto cible.Offset(, 1 - cible.Column), True 'cadrage
cible.Select
1 Sheets("export").Protect "mdp" 'votre mot de passe
End Sub
Cela peut paraître stupide de faire cette manoeuvre 2 fois, mais ne pas oublier que la macro Exporter est lancée soit par les listes déroulantes, soit par les boutons des feuilles...

Edit : notez le GoTo 1 (il ne servira que très rarement)...

A+
 
Dernière édition:

arno38000

XLDnaute Nouveau
Re : exporter des données en colonnes depuis des données en ligne

Bon et bien comme d habitude ;-) cela fonctionne.
C est tellement simple en analysant apres coup !
Merci et encore merci !
Je vais pouvoir avancer à nouveau sur d autres choses.

A suivre....;

Merci encore
 

Discussions similaires

Réponses
8
Affichages
445
Réponses
4
Affichages
213

Statistiques des forums

Discussions
312 320
Messages
2 087 223
Membres
103 497
dernier inscrit
JP9231