J'essaie d'éviter d'utiliser trop d'excel, mais lorsque je le fais, j'aime utiliser des références structurées car elles semblent beaucoup plus propres à écrire. p>
Si je crée une table appelée "Table1" avec des colonnes "Col1" et "Col2" Comment référendrais-je la première ligne de "col1" en utilisant une référence structurée dans une autre table? J'ai essayé la syntaxe C'est très gênant, comme il semble que cela soit simple. p> = table1 [[# Cette ligne], [COL1]]] code> et obtenez simplement une erreur. Existe-t-il une syntaxe comme
= table1 [1,1] ou = table1 [1, [col1]] code>? Bien sûr, cela ne fonctionne pas non plus, mais quel est l'équivalent? p>
6 Réponses :
ESSAYEZ
=INDEX(reference,row_num,column_num)
Il ne semble pas y avoir un moyen explicite d'utiliser un référencement structuré à des lignes particulières dans une table. Comme Adrian dit, vous pouvez utiliser Index. P>
ou vous pouvez utiliser l'intersection implicite pour référencer la même ligne: Si la table1 est sur la ligne 5:10 et le tableau 2 est également sur la rangée 5:10, puis en utilisant une référence structurée avec les noms de colonne intersectez implicitement la même ligne. P>
ou vous pouvez entrer la référence structurée sous la forme d'une formule multi-arrache (sélectionnez plusieurs cellules, entrez la formule et utilisez Ctrl-Shift-Entrée) dans différentes lignes et fonctionnera. P>
au lieu de l'index, je vous suggérerais de SUMIF. Il vous permettra d'utiliser des valeurs de table plutôt que des numéros de ligne explicites (qui peuvent casser si vous commencez à filtrer ou à commander). Par exemple (à partir du lien suivant), cela résume la colonne de quantité et n'inclut que ces lignes où le type est égal à la vérification et où le compte est égal aux utilitaires:
Voir ce lien Plus d'info: http://office.microsoft.com/en-us/excel-help/Unu-Structured-references-with-excel-tables-ha010155686.aspx P> = Sumifs (Table1 [montant], Tablef [Type], "Vérifier", Table1 [Compte], "Utilitaires") CODE> P>
table1 [[# Cette ligne] [colonne1]]] code> fonctionne em> fonctionne, mais la formule doit être de la même rangée que la rangée de table que vous souhaitez faire référence. Pour référencer la première rangée, ailleurs, utilisez soit
Countif (Critère_Range1, critères1 [ critères_rangen, critère]) code> ou le légèrement plus complexe
Sumifs () code> si vous avez besoin de numérique Valeurs au lieu des comptes, comme mentionné StudGeek: P>
Table1
ID Value Name
1 2 Two
2 4 Four
3 8 Eight
Ce serait bien si une table pouvait avoir une colonne désignée comme clé primaire (qui pourrait être numérique ou une chaîne), puis une référence structurée pourrait inclure un moyen de faire référence à une ligne de première clé. p>
Ce serait le sucre de syntaxe autour de Vlookup, mais la table pourrait savoir s'il a été trié sur la clé primaire et effectuer des recherches efficaces uniquement dans ce cas. Semble que Vlookup in intègre le mal qui trouve la mauvaise rangée si vous dépendez de triés, en particulier lorsque des tables ont un moyen pratique de trier les lignes. P>
Le quatrième paramètre de plage_lookup sur la fonction VLOOKUP () nécessite des correspondances exactes et fonctionne même dans des tables qui ne sont pas triées. Il renvoie une erreur si aucune correspondance n'est localisée.
Le truc dans de tels cas consiste à utiliser la fonction de décalage Excel: P>
décalage ([colonne1], 0,0,1) code> li>
- accéder à la 2e rangée
offset ([colonne1], 1,0,1) code> li>
ul>
etc. p>
Bien sûr, vous pouvez l'utiliser pour accéder une autre table et une autre colonne en le préfixant avec le nom de la table. Par exemple, décalse (Table2 [Column3], 4,0,1) Code> accédera à la 4ème ligne de la colonne "Colonne3" de "Table2" P>
Cela semble quelque peu en attente avec l'esprit d'une table structurée. Une bonne pratique serait qu'il ne devrait y avoir aucune information capturée dans la commande des rangées. Les colonnes sont des attributs, des lignes sont des instances ou des observations. Envisagez d'ajouter une colonne d'index (comme
Commandez code> ou
Date de la date CODE> ou
Séquence Code>), puis choisissez celui avec la séquence code> code > égal à 1.