Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Faire un tableau dinamique avec les champs de deux tableaux diff ér

4 réponses
Avatar
enirakenna
Bonjour,
Voilà : je souhaite faire apparaître les données de deux tableaux différents
(dans deux feuilles différentes) dans un tableau croisé. Mais je ne sais pas
du tout comment faire.
Pouvez-vous m'éclairer ?
Merci d'avance...

enirakenna

4 réponses

Avatar
JB
Bonjour,

Il faut choisir 'Plage de feuilles avec Etiquettes'

http://cjoint.com/?cmk6w2ne60

Cordialement JB
On 12 fév, 09:44, enirakenna
wrote:
Bonjour,
Voilà : je souhaite faire apparaître les données de deux tableaux d ifférents
(dans deux feuilles différentes) dans un tableau croisé. Mais je ne s ais pas
du tout comment faire.
Pouvez-vous m'éclairer ?
Merci d'avance...

enirakenna


Avatar
JB
Autre solution:

Consolider plusieurs feuilles en 1 seule BD

Sub consolide_ongletsNomOnglet()
Sheets(1).[A1].CurrentRegion.Offset(1, 0).Clear
For s = 2 To Sheets.Count
nlig = Sheets(s).[A65000].End(xlUp).Row - 1
ncol = Sheets(s).[A1].CurrentRegion.Columns.Count
[A65000].End(xlUp).Offset(1, ncol).Resize(nlig, 1).Value =
Sheets(s).Name
[A65000].End(xlUp).Offset(1, 0).Resize(nlig, ncol).Value = _
Sheets(s).[A2].Resize(nlig, ncol).Value
Next s
End Sub

http://cjoint.com/?cmlrK2Zcsk


JB


On 12 fév, 09:44, enirakenna
wrote:
Bonjour,
Voilà : je souhaite faire apparaître les données de deux tableaux d ifférents
(dans deux feuilles différentes) dans un tableau croisé. Mais je ne s ais pas
du tout comment faire.
Pouvez-vous m'éclairer ?
Merci d'avance...

enirakenna


Avatar
enirakenna
Bonjour et merci pour votre réponse !
En fait j'ai essayé en prenant exemple sur votre tableau.
Mais je n'y arrive pas.
Je ne comprends pas ce que cela veut dire "nommer les champs" ? A quel
moment dois-je nommer les champs ?

ce que je fais (et qui doit être complètement faux) : je clique dans le
tableau source N°1, puis j'ouvre le menu Données Je choisis Tableau
croisé..., et dans l'assistant je choisis "Consolider les plages" (mon
programme est en anglais, et ça donne "Consolidate ranges..") - puis je dois
spécifier quelle plage je veux consolider dans une boîte de dialogue dans
laquelle il y a la possibilité de sélectionner les plages, et de les ajouter,
puis de définir le nombre de champs (0 - 1 - 2 - etc)
Bref, je ne sais pas me servir de cette boîte de dialogue...
J'ai deux feuilles : une feuille "Prime" et une feuille "source". dans la
feuille source, il y a des informations concernant des salariés d'une
entreprise : leur nom, leur poste, leur service, leur salaire annuel etc. Et
dans "prime", il y a leur nom, et un champ prime (prime annuelle).
Je veux faire un tableau croisé qui reprend le salaire annuel, les primes
par poste et par service...
je ne sais pas comment faire...
en fait, ce que jai essayé aussi, c'est de nommer les feuilles
'Prime'!$A$1:$B$23
mais je me retrouve avec des étiquettes "Colonne - ligne - page (item 1 -
item 2). Je ne comprends pas.
Merci pour votre aide.
Enirakenna


Bonjour,

Il faut choisir 'Plage de feuilles avec Etiquettes'

http://cjoint.com/?cmk6w2ne60

Cordialement JB
On 12 fév, 09:44, enirakenna
wrote:
Bonjour,
Voilà : je souhaite faire apparaître les données de deux tableaux différents
(dans deux feuilles différentes) dans un tableau croisé. Mais je ne sais pas
du tout comment faire.
Pouvez-vous m'éclairer ?
Merci d'avance...

enirakenna







Avatar
enirakenna
Ah là là, merci beaucoup, mais écrire une macro me semble encore plus
compliqué !
En tout cas, vous avez l'air d'être super-pro.
Bon, je vais essayer de comprendre la première version de votre réponse
(plus adaptée pour moi)
merci encore
enirakenna


Autre solution:

Consolider plusieurs feuilles en 1 seule BD

Sub consolide_ongletsNomOnglet()
Sheets(1).[A1].CurrentRegion.Offset(1, 0).Clear
For s = 2 To Sheets.Count
nlig = Sheets(s).[A65000].End(xlUp).Row - 1
ncol = Sheets(s).[A1].CurrentRegion.Columns.Count
[A65000].End(xlUp).Offset(1, ncol).Resize(nlig, 1).Value > Sheets(s).Name
[A65000].End(xlUp).Offset(1, 0).Resize(nlig, ncol).Value = _
Sheets(s).[A2].Resize(nlig, ncol).Value
Next s
End Sub

http://cjoint.com/?cmlrK2Zcsk


JB


On 12 fév, 09:44, enirakenna
wrote:
Bonjour,
Voilà : je souhaite faire apparaître les données de deux tableaux différents
(dans deux feuilles différentes) dans un tableau croisé. Mais je ne sais pas
du tout comment faire.
Pouvez-vous m'éclairer ?
Merci d'avance...

enirakenna