Come utilizzare l'indice di colonna (invece del nome di colonna) in una formula.CIAO,
Sto cercando di farlo in un ciclo for:
Nella tabella corrente, ho 14 colonne. Le colonne #3~#14 sono state denominate da "Passaggio 1" a "Passaggio 12".
Nel ciclo for, voglio creare la colonna n. 15 (denominata "Delta Step i" per i = 2, i <=12, i++), che viene calcolata con la formula (Col(4) -Col(2)). Quindi la colonna n. 3 è stata eliminata. La stessa formula verrà riutilizzata nella successiva iterazione.
Due problemi qui,
1) la mia formula non funziona perché non c'è alcun valore nella colonna # 15 della tabella di output;
2) Sono preoccupato che una volta rilevata la colonna 3, i valori nella colonna 15 (in realtà la colonna 14, dopo l'eliminazione della colonna 3) scompariranno.
Ecco la mia sceneggiatura.
For(i=2,i<=15,i++,
DeltaStep = "Delta Step "||Char(i);
New Column(DeltaStep)<<FORMULA></FORMULA>
Ho provato anche questo, ma non funziona neanche.
For(i=2,i<=12,i++,
DeltaStep = "Delta Step "||Char(i);
Pre = Column(3) << getname;
Pst = Column(4) << getname;
New Column(DeltaStep)<<FORMULA></FORMULA>
Ri: Come utilizzare l'indice di colonna (invece del nome di colonna) in una formula.Buona pesca! Le persone spesso dimenticano che Column(#) o Column("name") necessitano delle parentesi vuote ( [] ) o del wrapper As Column() per i calcoli per riga. Mi piace pensare al riferimento come a un puntatore all'intestazione e agli attributi della colonna e ref[] espone il vettore o l'elenco di valori.
Per quanto riguarda l'eliminazione delle colonne, è un messaggio di tabella.Avresti potuto anche usare il JSL qui sotto senza selezionare la colonna in anticipo.
dt << Delete Columns( 3 );
Un altro errore comune è tentare di eliminare una colonna utilizzata come argomento per un'altra formula di colonna.Supponiamo che Col 4 usi una formula che fa riferimento a Col 3. È necessario rimuovere la formula dipendente in Col 4, quindi è possibile eliminare Col 3.
Questo è un altro motivo per utilizzare << Imposta ogni valore (espressione) rispetto a Formula (espressione) per la maggior parte dei casi, quindi le nuove colonne non sono bloccate e le dipendenze non esistono.
Ri: Come utilizzare l'indice di colonna (invece del nome di colonna) in una formula.Sbaglio anche per "cancella colonne" expr.
In allegato lo script corretto qui, per favore fatemi sapere se c'è un modo migliore per farlo.
Grazie!
For(i=2,i<=12,i++,
DeltaStep = "Delta Step "||Char(i);
New Column(DeltaStep,formula(Column(4)[] - Column(3)[]));
Column(3) << Set Selected;
dt << Delete Columns
);
Ri: Come utilizzare l'indice di colonna (invece del nome di colonna) in una formula.Penso di aver scoperto il motivo per cui non lo sto facendo correttamente...
Per il primo script nel mio post, dovrei aggiungere [] dopo Column(3)...
Grazie,
Zihao