Macro pour Recherche et Déplacement de cellules (Création d'une BDD à partir de fiches)...
22 réponses
gorwel2
Bonsoir les experts,
Je cherche =E0 rechercher/d=E9placer automatiquement de nombreuses cellules=
pour les avoir sous formes de donn=E9es en colonnes. Comme je l'ai vu =E0 =
cette adresse (http://boisgontierjacques.free.fr/pages_site/cellules.htm), =
=E0 la rubrique "Cr=E9ation d'une BD =E0 partir de fiches", j'ai vu que =E7=
a avait l'air faisable mais je n'arrive pas =E0 bien l'appliquer =E0 mon ta=
bleau (voir ci-dessous*).
La difficult=E9 vient du fait que les fiches ne sont pas forc=E9ment compl=
=E8tes (il peut manquer la ligne t=E9l ou le fax) et le champs activit=E9 p=
eut prendre 2 lignes ou + (voire absente)... En revanche, les fiches sont s=
yst=E9matiquement s=E9par=E9e par l'item "Plus d'informations [+]" (3 ligne=
s vierges avant et 1 apr=E8s). Aussi, le nom appara=EEt 2 fois.
A vos talents, cordialement, Go2.
PS : je joins un exemplaire du fichier =E0 cette adresse : https://drive.go=
ogle.com/file/d/0B3XGolv6S_fRellPRjVOME03Z1k/view?usp=3Dsharing
*EX :=20
Je voudrais les donn=E9es sous cette forme... :
A B C D=20
1 Nom Activit=E9 T=E9l Courriel
2 nom 1 Nautisme 01 01 01 01 01 A@GMAIL.COM
3 nom 2 Autres 02 02 02 02 02 B@gmail.com
etc.
=09
... et voici la longue liste telle qu'elle se pr=E9sente actuellement : =
=09
A B =09
6 nom 1 A =09
7 nom 1 A =09
8 T=E9l. 01 01 01 01 01 =09
9 Fax 01 01 01 01 02 =09
10 E.mail A@GMAIL.COM =09
11 =09
12 (Activit=E9 1 :)Nautisme =09
13 =09
14 =09
15 =09
16 Plus d'informations [+] =09
17 =09
18 nom 2 B =09
19 nom 2 B =09
20 T=E9l. 02 02 02 02 02 =09
21 Fax 02 02 02 02 03 =09
22 E.mail B@GMAIL.COM =09
23 =09
24 Activit=E9 2 =09
25 Activit=E9 2
...
est ce qu'il y a toujours la valeur "Plus d'informations [+] " qui sépare les fiches ?
isabelle
Le 2015-06-25 17:22, a écrit :
Bonsoir les experts,
Je cherche à rechercher/déplacer automatiquement de nombreuses cellules pour les avoir sous formes de données en colonnes. Comme je l'ai vu à cette adresse (http://boisgontierjacques.free.fr/pages_site/cellules.htm), à la rubrique "Création d'une BD à partir de fiches", j'ai vu que ça avait l'air faisable mais je n'arrive pas à bien l'appliquer à mon tableau (voir ci-dessous*).
La difficulté vient du fait que les fiches ne sont pas forcément complètes (il peut manquer la ligne tél ou le fax) et le champs activité peut prendre 2 lignes ou + (voire absente)... En revanche, les fiches sont systématiquement séparée > par l'item "Plus d'informations [+]" (3 lignes vierges avant et 1 après). Aussi, le nom apparaît 2 fois.
A vos talents, cordialement, Go2.
PS : je joins un exemplaire du fichier à cette adresse : https://drive.google.com/file/d/0B3XGolv6S_fRellPRjVOME03Z1k/view?usp=sharing
*EX : Je voudrais les données sous cette forme... : A B C D 1 Nom Activité Tél Courriel 2 nom 1 Nautisme 01 01 01 01 01 3 nom 2 Autres 02 02 02 02 02 etc.
... et voici la longue liste telle qu'elle se présente actuellement :
A B 6 nom 1 A 7 nom 1 A 8 Tél. 01 01 01 01 01 9 Fax 01 01 01 01 02 10 E.mail 11 12 (Activité 1 :)Nautisme 13 14 15 16 Plus d'informations [+] 17 18 nom 2 B 19 nom 2 B 20 Tél. 02 02 02 02 02 21 Fax 02 02 02 02 03 22 E.mail 23 24 Activité 2 25 Activité 2 ...
bonjour,
est ce qu'il y a toujours la valeur "Plus d'informations [+] " qui sépare les
fiches ?
isabelle
Le 2015-06-25 17:22, gorwel2@gmail.com a écrit :
Bonsoir les experts,
Je cherche à rechercher/déplacer automatiquement de nombreuses cellules pour les avoir sous formes de données en colonnes.
Comme je l'ai vu à cette adresse (http://boisgontierjacques.free.fr/pages_site/cellules.htm), à la rubrique "Création d'une BD à partir de fiches",
j'ai vu que ça avait l'air faisable mais je n'arrive pas à bien l'appliquer à mon tableau (voir ci-dessous*).
La difficulté vient du fait que les fiches ne sont pas forcément complètes (il peut manquer la ligne tél ou le fax) et le champs activité
peut prendre 2 lignes ou + (voire absente)... En revanche, les fiches sont systématiquement séparée >
par l'item "Plus d'informations [+]" (3 lignes vierges avant et 1 après). Aussi, le nom apparaît 2 fois.
A vos talents, cordialement, Go2.
PS : je joins un exemplaire du fichier à cette adresse : https://drive.google.com/file/d/0B3XGolv6S_fRellPRjVOME03Z1k/view?usp=sharing
*EX :
Je voudrais les données sous cette forme... :
A B C D
1 Nom Activité Tél Courriel
2 nom 1 Nautisme 01 01 01 01 01 A@GMAIL.COM
3 nom 2 Autres 02 02 02 02 02 B@gmail.com
etc.
... et voici la longue liste telle qu'elle se présente actuellement :
A B
6 nom 1 A
7 nom 1 A
8 Tél. 01 01 01 01 01
9 Fax 01 01 01 01 02
10 E.mail A@GMAIL.COM
11
12 (Activité 1 :)Nautisme
13
14
15
16 Plus d'informations [+]
17
18 nom 2 B
19 nom 2 B
20 Tél. 02 02 02 02 02
21 Fax 02 02 02 02 03
22 E.mail B@GMAIL.COM
23
24 Activité 2
25 Activité 2
...
est ce qu'il y a toujours la valeur "Plus d'informations [+] " qui sépare les fiches ?
isabelle
Le 2015-06-25 17:22, a écrit :
Bonsoir les experts,
Je cherche à rechercher/déplacer automatiquement de nombreuses cellules pour les avoir sous formes de données en colonnes. Comme je l'ai vu à cette adresse (http://boisgontierjacques.free.fr/pages_site/cellules.htm), à la rubrique "Création d'une BD à partir de fiches", j'ai vu que ça avait l'air faisable mais je n'arrive pas à bien l'appliquer à mon tableau (voir ci-dessous*).
La difficulté vient du fait que les fiches ne sont pas forcément complètes (il peut manquer la ligne tél ou le fax) et le champs activité peut prendre 2 lignes ou + (voire absente)... En revanche, les fiches sont systématiquement séparée > par l'item "Plus d'informations [+]" (3 lignes vierges avant et 1 après). Aussi, le nom apparaît 2 fois.
A vos talents, cordialement, Go2.
PS : je joins un exemplaire du fichier à cette adresse : https://drive.google.com/file/d/0B3XGolv6S_fRellPRjVOME03Z1k/view?usp=sharing
*EX : Je voudrais les données sous cette forme... : A B C D 1 Nom Activité Tél Courriel 2 nom 1 Nautisme 01 01 01 01 01 3 nom 2 Autres 02 02 02 02 02 etc.
... et voici la longue liste telle qu'elle se présente actuellement :
A B 6 nom 1 A 7 nom 1 A 8 Tél. 01 01 01 01 01 9 Fax 01 01 01 01 02 10 E.mail 11 12 (Activité 1 :)Nautisme 13 14 15 16 Plus d'informations [+] 17 18 nom 2 B 19 nom 2 B 20 Tél. 02 02 02 02 02 21 Fax 02 02 02 02 03 22 E.mail 23 24 Activité 2 25 Activité 2 ...
isabelle
svp oublier ma précédente question au sujet de "Plus d'informations [+]"
Aussi, le nom apparaît 2 fois.
lequel des 2 nom doit on retenir ? ou doit on retenir les 2 noms dans la même cellule ?
le champs activité peut prendre 2 lignes ou + (voire absente)
doit on mettre ces informations (activité) dans la même cellule ?
isabelle
svp oublier ma précédente question au sujet de "Plus d'informations [+]"
Aussi, le nom apparaît 2 fois.
lequel des 2 nom doit on retenir ? ou doit on retenir les 2 noms dans la même
cellule ?
le champs activité peut prendre 2 lignes ou + (voire absente)
doit on mettre ces informations (activité) dans la même cellule ?
svp oublier ma précédente question au sujet de "Plus d'informations [+]"
Aussi, le nom apparaît 2 fois.
lequel des 2 nom doit on retenir ? ou doit on retenir les 2 noms dans la même cellule ?
le champs activité peut prendre 2 lignes ou + (voire absente)
doit on mettre ces informations (activité) dans la même cellule ?
isabelle
sivilt
Bonjour et merci de votre attention.
Pour répondre à la question sur les 2 noms, seul un des deux noms est à retenir, le premier par exemple.
Concernant les lignes d'activité l'idéal serait de les avoir concatén ées effectivement en une seule cellule, mais je peux m'en passer ce n'est pas une information primordiale : la première ligne peut suffire. (Pour info, il arrive que cette information s'étale sur trois ou quatre lignes parfois...)
Pour l'item "+ Plus d'information [+]", je confirme, il apparaît toujours à la fin de chaque fiche avec trois lignes vides au-dessus et une en des sous.
En espérant avoir été assez clair, cordialement, Go2.
Bonjour et merci de votre attention.
Pour répondre à la question sur les 2 noms, seul un des deux noms est à retenir, le premier par exemple.
Concernant les lignes d'activité l'idéal serait de les avoir concatén ées effectivement en une seule cellule, mais je peux m'en passer ce n'est pas une information primordiale : la première ligne peut suffire. (Pour info, il arrive que cette information s'étale sur trois ou quatre lignes parfois...)
Pour l'item "+ Plus d'information [+]", je confirme, il apparaît toujours à la fin de chaque fiche avec trois lignes vides au-dessus et une en des sous.
En espérant avoir été assez clair, cordialement, Go2.
Pour répondre à la question sur les 2 noms, seul un des deux noms est à retenir, le premier par exemple.
Concernant les lignes d'activité l'idéal serait de les avoir concatén ées effectivement en une seule cellule, mais je peux m'en passer ce n'est pas une information primordiale : la première ligne peut suffire. (Pour info, il arrive que cette information s'étale sur trois ou quatre lignes parfois...)
Pour l'item "+ Plus d'information [+]", je confirme, il apparaît toujours à la fin de chaque fiche avec trois lignes vides au-dessus et une en des sous.
En espérant avoir été assez clair, cordialement, Go2.
isabelle
bonjour Go2,
voici un début de piste, j'ai ajouté l'onglet "liste" pour mettre le résultat. http://www.cjoint.com/c/EFAqBQGtWNa
Sub Macro1() Dim LastRow As Long, n As Integer, i As Integer Dim Nbrfiche As Integer, ficheDébut As Integer, ficheFin As Integer
With Sheets("liste") .Range("A2:D" & .Cells(.Rows.Count, 1).End(xlUp).Row).ClearContents End With
For n = 2 To Nbrfiche + 1 For i = ficheDébut To ficheFin Select Case Sheets("test").Cells(i, 1) Case "Nom": Sheets("liste").Cells(n, 1) = Sheets("liste").Cells(n, 1) & " " & Sheets("test").Cells(i, 2) Case "Activité": Sheets("liste").Cells(n, 2) = Sheets("liste").Cells(n, 2) & " " & Sheets("test").Cells(i, 2) Case "Tél.": Sheets("liste").Cells(n, 3) = Sheets("liste").Cells(n, 3) & " " & Sheets("test").Cells(i, 2) Case "E.mail": Sheets("liste").Cells(n, 4) = Sheets("liste").Cells(n, 4) & " " & Sheets("test").Cells(i, 2) End Select Next ficheDébut = ficheFin + 1 ficheFin = Application.Match("Plus d'informations [+]", Sheets("test").Range("A" & ficheDébut & ":A" & LastRow), 0) + ficheDé but - 2 Next End Sub
isabelle
AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n'exi ste pas, les noms apparaissent directement en colonne A (rien dans la colon ne B). Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon. Je remets une version corrigée ici (je n'arrive pas à modifier la macro pour faire apparaître les noms) : https://drive.google.com/file/d/ 0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp=sharing Si tu pouvais y jeter un dernier oeil...
Cdlt, Go2.
Le vendredi 26 juin 2015 18:28:21 UTC+2, isabelle a écrit :
bonjour Go2,
voici un début de piste, j'ai ajouté l'onglet "liste" pour mettre le résultat.
http://www.cjoint.com/c/EFAqBQGtWNa
Sub Macro1()
Dim LastRow As Long, n As Integer, i As Integer
Dim Nbrfiche As Integer, ficheDébut As Integer, ficheFin As Integer
With Sheets("liste")
.Range("A2:D" & .Cells(.Rows.Count, 1).End(xlUp).Row).ClearContents
End With
For n = 2 To Nbrfiche + 1
For i = ficheDébut To ficheFin
Select Case Sheets("test").Cells(i, 1)
Case "Nom":
Sheets("liste").Cells(n, 1) = Sheets("liste").Cells(n, 1) & " " &
Sheets("test").Cells(i, 2)
Case "Activité":
Sheets("liste").Cells(n, 2) = Sheets("liste").Cells(n, 2) & " " &
Sheets("test").Cells(i, 2)
Case "Tél.":
Sheets("liste").Cells(n, 3) = Sheets("liste").Cells(n, 3) & " " &
Sheets("test").Cells(i, 2)
Case "E.mail":
Sheets("liste").Cells(n, 4) = Sheets("liste").Cells(n, 4) & " " &
Sheets("test").Cells(i, 2)
End Select
Next
ficheDébut = ficheFin + 1
ficheFin = Application.Match("Plus d'informations [+]",
Sheets("test").Range("A" & ficheDébut & ":A" & LastRow), 0) + ficheDé but - 2
Next
End Sub
isabelle
AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n'exi ste pas, les noms apparaissent directement en colonne A (rien dans la colon ne B).
Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon. Je remets une version corrigée ici (je n'arrive pas à modifier la macro pour faire apparaître les noms) : https://drive.google.com/file/d/ 0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp=sharing
Si tu pouvais y jeter un dernier oeil...
For n = 2 To Nbrfiche + 1 For i = ficheDébut To ficheFin Select Case Sheets("test").Cells(i, 1) Case "Nom": Sheets("liste").Cells(n, 1) = Sheets("liste").Cells(n, 1) & " " & Sheets("test").Cells(i, 2) Case "Activité": Sheets("liste").Cells(n, 2) = Sheets("liste").Cells(n, 2) & " " & Sheets("test").Cells(i, 2) Case "Tél.": Sheets("liste").Cells(n, 3) = Sheets("liste").Cells(n, 3) & " " & Sheets("test").Cells(i, 2) Case "E.mail": Sheets("liste").Cells(n, 4) = Sheets("liste").Cells(n, 4) & " " & Sheets("test").Cells(i, 2) End Select Next ficheDébut = ficheFin + 1 ficheFin = Application.Match("Plus d'informations [+]", Sheets("test").Range("A" & ficheDébut & ":A" & LastRow), 0) + ficheDé but - 2 Next End Sub
isabelle
AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n'exi ste pas, les noms apparaissent directement en colonne A (rien dans la colon ne B). Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon. Je remets une version corrigée ici (je n'arrive pas à modifier la macro pour faire apparaître les noms) : https://drive.google.com/file/d/ 0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp=sharing Si tu pouvais y jeter un dernier oeil...
Cdlt, Go2.
isabelle
si j'ai bien compris, les informations sont: Activité Liste : Tél. Fax E.mail Plus d'informations [+]
les autres sont les noms
est ce bien cela ? isabelle
Le 2015-06-26 18:44, a écrit :
AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n'existe pas, les noms apparaissent directement en colonne A (rien dans la colonne B). Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon. Je remets une version corrigée ici (je n'arrive pas à modifier la macro pour faire apparaître les noms) : https://drive.google.com/file/d/0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp=sharing Si tu pouvais y jeter un dernier oeil...
Cdlt, Go2.
si j'ai bien compris, les informations sont:
Activité
Liste :
Tél.
Fax
E.mail
Plus d'informations [+]
les autres sont les noms
est ce bien cela ?
isabelle
Le 2015-06-26 18:44, sivilt@gmail.com a écrit :
AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n'existe pas,
les noms apparaissent directement en colonne A (rien dans la colonne B).
Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon.
Je remets une version corrigée ici (je n'arrive pas à modifier la macro pour faire apparaître les noms) :
https://drive.google.com/file/d/0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp=sharing
Si tu pouvais y jeter un dernier oeil...
si j'ai bien compris, les informations sont: Activité Liste : Tél. Fax E.mail Plus d'informations [+]
les autres sont les noms
est ce bien cela ? isabelle
Le 2015-06-26 18:44, a écrit :
AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n'existe pas, les noms apparaissent directement en colonne A (rien dans la colonne B). Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon. Je remets une version corrigée ici (je n'arrive pas à modifier la macro pour faire apparaître les noms) : https://drive.google.com/file/d/0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp=sharing Si tu pouvais y jeter un dernier oeil...
Cdlt, Go2.
gorwel2
Euh... Pas sûr de m'être bien expliqué. L'item "Liste :" que tu cites n'apparaît pas par exemple (je l'avais juste rajouté pour séparer du haut (ligne 1 et 2 où j'avais commencé un embryon de tableau formaté à mon goût, mais je préfère bien sûr ta solution dans l'autre on glet "Liste")... Si tu préfères, on peut supprimer les lignes 1 à 5). Les informations commencent donc à partir de la ligne 6 (de l'onglet "Tes t" donc) comme une longue suite de fiches constituées comme ça :
Et le but est bien de les avoir sous cette forme (dans un autre onglet "Lis te" ok) :
A B C D 1 Nom Activité Tél Courriel 2 Nom 1 Nautisme 01 01 01 01 01 3 Nom 2 Kayak... 02 02 02 02 02 etc.
C'est plus clair ?
Cdlt, Go2.
Le samedi 27 juin 2015 04:02:32 UTC+2, isabelle a écrit :
si j'ai bien compris, les informations sont: Activité Liste : Tél. Fax E.mail Plus d'informations [+]
les autres sont les noms
est ce bien cela ? isabelle
Le 2015-06-26 18:44, a écrit :
> AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n 'existe pas, > les noms apparaissent directement en colonne A (rien dans la colonne B ). > Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon. > Je remets une version corrigée ici (je n'arrive pas à modifier la m acro pour faire apparaître les noms) : > https://drive.google.com/file/d/0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp =sharing > Si tu pouvais y jeter un dernier oeil... > > Cdlt, Go2. >
Euh... Pas sûr de m'être bien expliqué. L'item "Liste :" que tu cites n'apparaît pas par exemple (je l'avais juste rajouté pour séparer du haut (ligne 1 et 2 où j'avais commencé un embryon de tableau formaté à mon goût, mais je préfère bien sûr ta solution dans l'autre on glet "Liste")... Si tu préfères, on peut supprimer les lignes 1 à 5).
Les informations commencent donc à partir de la ligne 6 (de l'onglet "Tes t" donc) comme une longue suite de fiches constituées comme ça :
Et le but est bien de les avoir sous cette forme (dans un autre onglet "Lis te" ok) :
A B C D
1 Nom Activité Tél Courriel
2 Nom 1 Nautisme 01 01 01 01 01 A@GMAIL.COM
3 Nom 2 Kayak... 02 02 02 02 02 B@GMAIL.COM
etc.
C'est plus clair ?
Cdlt, Go2.
Le samedi 27 juin 2015 04:02:32 UTC+2, isabelle a écrit :
si j'ai bien compris, les informations sont:
Activité
Liste :
Tél.
Fax
E.mail
Plus d'informations [+]
les autres sont les noms
est ce bien cela ?
isabelle
Le 2015-06-26 18:44, sivilt@gmail.com a écrit :
> AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n 'existe pas,
> les noms apparaissent directement en colonne A (rien dans la colonne B ).
> Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon.
> Je remets une version corrigée ici (je n'arrive pas à modifier la m acro pour faire apparaître les noms) :
> https://drive.google.com/file/d/0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp =sharing
> Si tu pouvais y jeter un dernier oeil...
>
> Cdlt, Go2.
>
Euh... Pas sûr de m'être bien expliqué. L'item "Liste :" que tu cites n'apparaît pas par exemple (je l'avais juste rajouté pour séparer du haut (ligne 1 et 2 où j'avais commencé un embryon de tableau formaté à mon goût, mais je préfère bien sûr ta solution dans l'autre on glet "Liste")... Si tu préfères, on peut supprimer les lignes 1 à 5). Les informations commencent donc à partir de la ligne 6 (de l'onglet "Tes t" donc) comme une longue suite de fiches constituées comme ça :
Et le but est bien de les avoir sous cette forme (dans un autre onglet "Lis te" ok) :
A B C D 1 Nom Activité Tél Courriel 2 Nom 1 Nautisme 01 01 01 01 01 3 Nom 2 Kayak... 02 02 02 02 02 etc.
C'est plus clair ?
Cdlt, Go2.
Le samedi 27 juin 2015 04:02:32 UTC+2, isabelle a écrit :
si j'ai bien compris, les informations sont: Activité Liste : Tél. Fax E.mail Plus d'informations [+]
les autres sont les noms
est ce bien cela ? isabelle
Le 2015-06-26 18:44, a écrit :
> AAAAargh ! J'avais mal formaté mes fiches : le champs "Nom" en fait n 'existe pas, > les noms apparaissent directement en colonne A (rien dans la colonne B ). > Sinon, sur le principe de la macro avec l'onglet liste, ça m'a l'air tout bon. > Je remets une version corrigée ici (je n'arrive pas à modifier la m acro pour faire apparaître les noms) : > https://drive.google.com/file/d/0B3XGolv6S_fRWlZHZVdZamNHM3M/view?usp =sharing > Si tu pouvais y jeter un dernier oeil... > > Cdlt, Go2. >
isabelle
dit moi si c'est mieux ?
Sub Macro1() Dim LastRow As Long, n As Integer, i As Integer Dim Nbrfiche As Integer, ficheDébut As Integer, ficheFin As Integer
With Sheets("liste") .Range("A2:D" & .Cells(.Rows.Count, 1).End(xlUp).Row).ClearContents End With