Tableau d'association
Résolu
DR.Morpheus
Messages postés
480
Date d'inscription
Statut
Membre
Dernière intervention
-
DR.Morpheus Messages postés 480 Date d'inscription Statut Membre Dernière intervention -
DR.Morpheus Messages postés 480 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
sous exel ou sous openoffice
j'ai un tableau dans ce genre la :
- A B C D
1 * - * -
2 - * - -
3 - * * -
4 - - - *
je souhaiterai extraire les données automatiquement et afficher ceci :
Lettre Chiffre
A 1
B 2
B 3
C 1
C 3
D 4
je pense qu'il faut faire une sorte de =recherchev() mais je ne sai pas comment l'écrire
merci a l'avance de votre aide
sous exel ou sous openoffice
j'ai un tableau dans ce genre la :
- A B C D
1 * - * -
2 - * - -
3 - * * -
4 - - - *
je souhaiterai extraire les données automatiquement et afficher ceci :
Lettre Chiffre
A 1
B 2
B 3
C 1
C 3
D 4
je pense qu'il faut faire une sorte de =recherchev() mais je ne sai pas comment l'écrire
merci a l'avance de votre aide
A voir également:
- Tableau d'association
- Tableau word - Guide
- Tableau ascii - Guide
- Trier un tableau excel - Guide
- Tableau croisé dynamique - Guide
- Imprimer tableau excel sur une page - Guide
2 réponses
Bonjour,
j'ai cherché en vain une formule matricielle mais...
donc par VBA avec excel restition colonne F,G
maquette
https://www.cjoint.com/?0mBkmmofoKU
j'ai cherché en vain une formule matricielle mais...
donc par VBA avec excel restition colonne F,G
Sub transposer() lig = 65536 col = "IV" nbre = Application.CountIf(Range("A1:D4"), "*") For cptr = 1 To nbre adresse = Cells.Find("*", Cells(lig, col), , , xlByColumns).Address col = Range(adresse).Column lig = Range(adresse).Row Cells(cptr, "F") = Chr(col + 64) Cells(cptr, "G") = lig Next End Sub
maquette
https://www.cjoint.com/?0mBkmmofoKU
autre exemple:
----------|marie|Bernard|Charles|Denis|
|lapins|---*---- |---*------|---*------|---*----|
|poule|----------|---*------|----------|--------|
|choux|---*------|---*-----|---*------|---*----|
|chien|---*------|----------|----------|---*----|
malheureusement étant en début de formation informatique je n'est pas encore abordés le VBA
d'après ce que je peu comprendre a première vue c'est que "col" et "lig" corresponde a l'adresse des ligne et colonne tu tableau . donc logiquement il faudrait les remplacer par des données incrémentés par une boucle du genre col = A1 deuxième boucle col = B1 etc ...
mais je ne sait pas comment l'écrire.
je vous remercie encore de l'intérêt que vous porté a mon soucis . et merci de m'aider une fois de plus .
Sub transposer()
lig = 65536
col = "V"
nbre = Application.CountIf(Range("B2:E5"), "§")
For Cptr = 1 To nbre
adresse = Cells.Find("§", Cells(lig, col), , , xlByColumns).Address
col = Range(adresse).Column
lig = Range(adresse).Row
egale = "="
Cells(Cptr, "G") = egale & Chr(col + 64) & 1
Cells(Cptr, "H") = egale & "A" & lig
Next
End Sub
merci énormément michel_m tu est mon sauveur du jour :) très joyeuses fêtes a toi .