Utilizzare CONCATENARE per creare un collegamento ipertestuale a una cella in un altro foglio [duplica]

0

Domanda

Ho una cartella di lavoro con diversi fogli. Voglio creare una sorta di glossario con i link diretti ai vari fogli. In col A, c'è un elenco di tutti i nomi di foglio (ad esempio, Gen, Feb, Mar). In col B voglio collegamenti diretti per la cella A1 nel rispettivo foglio (ad esempio a gennaio!A1, a Febbraio!A1, ecc.

Posso portare il valore della cella di destinazione (A1) utilizzando INDIRETTA+CONCATENARE. per esempio, in =INDIRETTO(A2&"!A1") porterà il valore di Jan!A1 (dove la cella A2 contiene il nome del foglio: Jan).

Quello che non riesco a fare è creare un link che se cliccato mi porterà a Jan!A1

Per rendere le cose più facili, ho aggiunto un esempio: https://docs.google.com/spreadsheets/d/1z_UuA62ghUejFwGWKpT_smMhKM4QAVMgZrKotim8WHE/edit#gid=0 Nella scheda "Principale" Col sono i nomi dei fogli. La colonna B è dove mi piacerebbe mostrare i collegamenti ipertestuali. Col C sono riportati i valori (è di nessuna importanza, perché ho fatto riferimento nella mia domanda)

1

Migliore risposta

1

hai bisogno HYPERLINK e #gid=.

ogni foglio è unico gid si può trovare nella URL. allora si può fare:

=HYPERLINK("#gid=1062970060&range=A1"; "Sheet2")

=ARRAYFORMULA(IF(B:B="",,HYPERLINK("#gid=1734824104&range=B"&ROW(B:B), B:B)))

0

dove gid numero può essere trovato qui:

enter image description here


è possibile automatizzare questo processo con script:

function SHEETLIST() {
try {
  var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets()
  var out = new Array( sheets.length+1 ) ;
  out[0] = [ "NAME" , "#GID" ];
  for (var i = 1 ; i < sheets.length+1 ; i++ ) out[i] = 
  [sheets[i-1].getName() , sheets[i-1].getSheetId() ];
  return out
}
catch( err ) {
  return "#ERROR!" }}

per attivare i nomi dei fogli in attivo i collegamenti ipertestuali:

=ARRAYFORMULA(HYPERLINK("#gid="&
 QUERY(INDEX(SHEETLIST();;2); "offset 1"); 
 QUERY(INDEX(SHEETLIST();;1); "offset 1")))

e se si desidera associare al manuale di input è possibile utilizzare VLOOKUP come

=ARRAYFORMULA(IFNA(VLOOKUP(A1:A5, HYPERLINK("#gid="&
 QUERY(INDEX(SHEETLIST();;2); "offset 1"); 
 QUERY(INDEX(SHEETLIST();;1); "offset 1")); 1; 0)))

senza script:

enter image description here

2021-11-21 12:41:54

Grazie, ma questo metodo è di tipo manuale. Ho già una lista di molti nomi di foglio, voglio usare il nome del foglio, piuttosto che portare il GID per ciascuno di essi.
Tom

@Tom risposta aggiornati
player0

Grazie di nuovo, ma io non sto cercando di risolvere con uno script. Sto cercando di capire se è fattibile con una formula che utilizza i nomi dei fogli.
Tom

@Tom non è possibile a meno che non si raccolgono tutte gid per tutti i fogli manualmente. non esiste una formula per la lettura gid ecco perché avete bisogno di uno script per extrract automaticamente
player0

@Tom vedere il foglio
player0

Grazie di nuovo. Funziona bene con l ' sceneggiatura, ma spero che qualcuno possa trovare un modo per farlo con formula, questo è il motivo per cui non sto segnando come risolto. Io con voto positivo la tua risposta.
Tom

In altre lingue

Questa pagina è in altre lingue

Русский
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Español
..................................................................................................................
Slovenský
..................................................................................................................