Come copiare più formule relative esattamente come sono?


2

Voglio copiare le formule con riferimenti relativi in ​​un altro intervallo senza modificare la formula / aggiornare quei riferimenti relativi. So che ci sono alcuni componenti aggiuntivi a pagamento che lo fanno, ma non sto cercando di dare soldi alle persone per qualcosa di così semplice.

Esempio:
A1 contiene =C2+B3 (ed è funzionante / risolvente)

Copia A1 in X1
X1 ora contiene =C2+B3 (e sta funzionando / risolvendo)

Faccio questo e poi modifico leggermente la nuova copia delle formule tramite sostituzioni e altri mezzi. (Quindi ho bisogno di loro funzionali e non incollare speciali - collegamenti)

Attualmente, sostituisco solo =con x=, copia / incolla e quindi sostituisco x=con =. Ho visto persone nel corso degli anni usare modi più elaborati tramite la funzionalità XLS nativa, ma non so come. Ho bisogno di farlo per centinaia di diverse formule contemporaneamente, quindi copiare / incollare la formula da ciascuna individualmente non funzionerà.

/// È rimasta una soluzione incompleta per capire:

Cambia il formato della cella in testo. Digita =A1ora otterrai solo testo. La modifica del formato in generale non risolve la formula. Come possiamo risolvere un array di questi per ricominciare a funzionare come formule, non solo testo? (Oltre a entrare in ognuno di essi e premere invio)

... (e per chiunque sia curioso il componente aggiuntivo di Kutools lo fa - copia esatta)


Copia la formula e non la cella. Clicca sulla cella. Evidenzia il testo nella barra della formula. Ctrl-C. Fai clic sulla cella, quindi nella barra della formula fai clic e premi ctrl-v
Scott Craner,

Per uno a uno sì, l'obiettivo è copiarne 500 alla volta (: e l'ho visto fatto.
helena4

@ScottCraner Ho ricevuto un suggerimento da qualcuno nell'edificio. È possibile modificare il formato dell'area in TESTO. quindi esegui una funzione (per simulare come se fossi entrato nelle celle e hai premuto invio.) copia, quindi riporta il formato della cella alla normalità ed esegui la funzione per calcolare le formule. Apparentemente F9 non lo taglia.
helena4,

Hai davvero bisogno di quella formula per essere copiata? Qual è lo scopo dietro di esso? Lo stai mantenendo "salvato" in X1 nel caso in cui cambi la formula A1? O vuoi che X1 abbia la stessa formula esatta mostrata in A1? Noi potremmo essere al lavoro su un XY problema - si può descrivere l'/ idea principale scopo dietro quello che stai cercando di fare?
BruceWayne,

Sì, certamente. Devo copiare gran parte dei miei fogli contenenti formule relative e assicurarmi che le formule relative non si adattino alla distanza percorsa. Questo è un risultato assolutamente evidente dal test case se dato con x = sostituisci.
helena4,

Risposte:


2

Ciò presuppone che tu abbia una copia salvata della cartella di lavoro.


1. Taglia le formule per il tuo intervallo.
2. Aprire una nuova cartella di lavoro e incollare l'intervallo di taglio.
3. Chiudere la cartella di lavoro originale senza salvare.
4. Aprire la cartella di lavoro originale.
5. Tagliare e incollare l'intervallo dalla nuova cartella di lavoro alla nuova gamma nella cartella di lavoro originale.

Le celle incollate ora faranno esplicitamente riferimento alle posizioni originali (ad es [WorkBook1.xlsx]Sheet1!A1.). Se non si desidera il riferimento esplicito, è possibile utilizzare trova e sostituisci per eliminare il testo aggiuntivo.


È possibile evitare la chiusura del documento se si utilizza un documento Google per la destinazione incolla, quindi annullare il taglio del software. Sembra che la soluzione sia più lenta rispetto alla semplice sostituzione.
helena4,

1

È possibile utilizzare FORMULATEXT(). Se la formula in A1è =B1+C1, in D1se la metti =FORMULATEXT(A1), tornerà =C1+B1come una stringa.

Quindi puoi spostare la formula, copiare / incollare, ecc.

inserisci qui la descrizione dell'immagine


Sei vicino a vincere questo a meno che qualcuno non abbia un metodo più elaborato.
helena4,

@ helena4 - Cosa intendi con "fancier"? Come sono i tuoi dati? Puoi chiarire, nel tuo PO, cosa stai provando esattamente? Sei aperto all'utilizzo di macro?
BruceWayne,

Più veloce per enormi set di dati (:
helena4

@ helena4 - Puoi trascinare la formula verso il basso e ottenere tutte le formule. Sono una o due formule e vuoi copiarle su un ampio intervallo? Puoi pubblicare un esempio dei dati e dell'output previsto?
BruceWayne,

Inoltre come lo calcoli? Se si utilizza incolla testo speciale da = FORMULATEXT, viene visualizzato il testo della formula e non è possibile eseguirlo regolarmente tramite F9. E non vuoi entrare in ogni cella per premere Invio per iniziare a lavorare con le formule.
helena4,

0

Faccio semplicemente questo:

  1. Nella cella con il colpo di formula F2
  2. Evidenzia la formula e premi Ctrl+ cper copiarla (come testo).
  3. Incollalo in un'altra cella o intervallo di celle :)

1
Questo è ciò che ha suggerito @ScottCraner, ma OP ha 500 di queste formule da fare e ha detto che è un po 'ingombrante.
BruceWayne,

Non avevo visto il commento, ma dato l'OP può evidenziare un intervallo (potenzialmente massiccio) di celle prima della pasta è difficile capire cosa sia particolarmente ingombrante al riguardo?
Mayersdesign,

1
Bene, non ne sono sicuro, ma se ogni formula è diversa, passare a tante celle e copiare / incollare manualmente i dati potrebbe richiedere del tempo. Ma senza vedere un esempio dei dati di OP, funzionerà altrettanto bene. Presumo che ogni formula sia diversa. Se sono solo alcune formule da incollare, allora sì, OP può semplicemente farlo su un intervallo.
BruceWayne,

Ah! pensavo fosse solo una formula, vabbè, vedremo :)
mayersdesign

ok aggiungerò la parola "diverso" al titolo.
helena4,

0

Che ne dici di usare INDIRECT()?

=INDIRECT("A1"). Questo mostrerà il valore A1restituito dalla formula. Se aggiorni la formula A1, verrà aggiornata ovunque. Puoi anche copiare / incollare la INDIRECT()formula ovunque senza dover modificare il riferimento:

inserisci qui la descrizione dell'immagine


Indiretto è volatile, il computer inizia a morire quando sto usando circa 500000 istanze.
helena4,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.