Déterminer automatiquement la plage d'un tableau

Bonjour le Forum

J'ai une feuille qui va régulièrement recevoir des données. Ce sera 2 tableaux non identiques et de tailles différentes (voir le fichier joint en guise d'exemple). Le nb de colonnes est fixe dans le temps mais le nb de lignes est variable.

Je suis donc à la recherche d'une FORMULE (pour l'instant je suis réticent à l'idée de le faire en VBA)

qui me retournera les plages des tableaux. Par exemple : A3:C12 pour le tableau 1 et A17:B25 pour le 2ème.

Alors si quelqu'un passe par là....

Ps: Peut être que ce n'est possible qu'en VBA... ?!

Cdt

Bonjour

Je pense que les tableaux structurés existent dans Excel 11 MAC auquel cas

=Tableau1[Ville]

correspond à l'ensemble des lignes de la colonne Ville, hors en-tête, ou

=Tableau1[[#Tout];[Ville]]

avec en-tête, du 1er tableau Nommé Tableau1 et donc A4:A12 (ou A3:A12) en l'état mais s'adaptant automatiquement en cas d'ajout ou suppression de lignes.

bonjour

un essai pour dimensionner le tableau 1

22samoterell22.xlsx (11.37 Ko)

cordialement

Bonjour,

==> 78Chris :

Comme les utilisateurs ne disposent que de la version 2010 (sous Windows)... . C'est tout de même bon à savoir et je t'en remercie.

==> Tulipe_4 :

Merci à toi également.

Je m'attendais plutôt à la formule qui retournera le 12 de [A3:A12] vu que le numéro de la 1ère ligne du tableau 1 est connu et fixe. Je précise qu'il s'agira d'un copié-collé à partir d'une sortie SAS à raison d'une fois/semaine.

Bien sûr, la détermination automatique de la dernière ligne du Tableau 1 (i.e 12) n'aurait pas été nécessaire s'il n'y avait pas eu un 2e tableau dans le même onglet. C'est donc la présence de ce 2e tableau qui nous oblige à calculer automatiquement le début (ie la 1ere ligne) du Tableau 2. Ma problématique peut donc se résumer comme suit :

Comment calculer automatiquement la 1ère ligne du Tableau 2 du fichier joint ? Cette 1ère ligne est inconnue car le nb de lignes du tableau précédent est variable.

Mais toujours est-il que je n'ai pas encore bossé ta solution. Je vais donc m'y pencher. Elle me servira de point de départ dans le pire des cas !! Encore merci !

Et Bonne journée à vous !

Bonjour,

Un exemple !...

snip 20180823120208

RE

==> 78Chris :

Comme les utilisateurs ne disposent que de la version 2010 (sous Windows)... . C'est tout de même bon à savoir et je t'en remercie.

Sur Windows cela existe depuis le version 2007... donc utilise la solution illustrée par Jean-Eric...

(la 2011 MAC est l'équivalent en moins avancé de la 2010 Windows)

Bonjour,

Alors c'est parfait !! Du coup ça me paraît plus simple maintenant .

à vous.

Cdt,

Re,

Pour l'addresse d'une plage (tableau), une formule simple et digeste comme seul tulipe_4 sait faire.

"=ADRESSE(LIGNE(Tableau1[[#En-têtes];[Joueur]])+1;COLONNE(Tableau1[[#En-têtes];[Joueur]]))&"":""&
ADRESSE(LIGNE(Tableau1[[#En-têtes];[Joueur]])+LIGNES(Tableau1[Joueur])-1;COLONNE(Tableau1[[#En-têtes];[Joueur]])+COLONNES(Tableau1[#En-têtes])-1)"

Cdlt.

8samoterell22.xlsx (18.53 Ko)

Re,

J'ai testé la très digeste formule de Tulipe_4 que tu m'as proposée... C'est NICKEL!!! Bah oui puisque c'est du "tout cuit" !!

Désolé Confucius, j'apprendrai à pêcher plus tard....

Elle répond parfaitement à mon besoin.

Un grand Merci et Bonne journée à tout le monde.

Bonne Journée !!

J'espère connaître votre secret un jour...

RE

Il me semble que la formule de Jean-Eric est décalée d'une ligne...

Un poil plus court

=CELLULE("adresse";Tableau1[[#En-têtes];[Joueur]])&":"&CELLULE("adresse";DECALER(Tableau1[[#En-têtes];[Joueur]];NBVAL(Tableau1[Joueur]);NBVAL(Tableau1[#En-têtes])-1))

Sous réserve d'une colonne joueur sans trou...

Ok Très bien !

Merci 78Chris pour ton aide!!

Rechercher des sujets similaires à "determiner automatiquement plage tableau"