È diagnostico che funzioni una procedura guidata di Excel ma non l'inserimento manuale?


1

Spero che qualcuno con conoscenza dei meccanismi interni di Excel possa far luce su uno strano problema di Excel. Ho aiutato qualcuno con un problema con Excel e la soluzione ha comportato l'uso della funzione TEXT per formattare una data all'interno di una stringa di visualizzazione. Per riferimento, la domanda è qui e ci sono discussioni e immagini spostate per chattare sulla risposta. La chat include un collegamento a una copia del file.

È stato un uso diretto della funzione TEXT, che ha funzionato ovunque tranne il foglio di lavoro dell'OP sui computer dell'OP (il file era stato salvato da Excel 2016 come V95-2003 .xls). Sono stato in grado di farlo funzionare sul mio sistema in una copia del foglio di lavoro con LO Calc, anche se ho dovuto saltare attraverso i cerchi per farlo (il foglio di calcolo, di per sé, si comportava in modo scoiattolo, oltre all'app Excel di OP).

  • La cella originale aveva una formula "funzionante", solo una concatenazione di valori da varie altre celle. Una delle celle di riferimento del componente conteneva una data, che veniva visualizzata all'interno della stringa in formato non elaborato. La soluzione era quella di racchiudere quel riferimento di cella con una funzione TEXT per formattarlo come una data.
  • La formula originale ha smesso di essere riconosciuta come formula se è stata modificata per inserire la funzione TESTO. L'intera formula è stata trattata come una stringa di testo, in alcuni casi con un messaggio di errore generico.
  • Preformattare la cella come Generale non ha aiutato.
  • Né ha fatto alcun tipo di modifica della formula residente.
  • Abbiamo escluso spazi vuoti o virgolette singole, problemi con i separatori di elenchi regionali e simili (la formula originale ha funzionato e nessuna di queste cose è stata modificata).
  • Copiare e incollare una versione modificata della formula da un'altra cella ha funzionato sul mio sistema, ma non sui PO.
  • Abbiamo eliminato possibilità come un foglio di lavoro corrotto (aperto un nuovo foglio di lavoro) o l'uso di un formato di file che precedeva la funzione TESTO (salvato il file in un formato corrente e riaperto).
  • Il riavvio del computer non ha influito sul problema (non un singhiozzo).
  • Ciò non sembra corrompere l'installazione di Excel. L'OP ha riferito di aver replicato il problema su un numero di computer a cui avevano accesso.
  • Non posso escludere la possibilità che tutte le installazioni di Excel testate dall'OP siano state configurate in modo simile con impostazioni intese a garantire la compatibilità con antiche installazioni di Excel in ufficio che non possono o non saranno aggiornate.

TL; DR:

Alla fine, ho fatto aprire all'OP un nuovo foglio di lavoro, ho inserito una data in una cella e quindi ho fatto riferimento a una semplice funzione TEXT in un'altra cella. Il loro Excel 2016 non accetterebbe la funzione TEXT quando viene digitato nella cella (ha prodotto un messaggio di errore generico "c'è un problema con questa formula").

Tuttavia, potrebbero utilizzare la procedura guidata per fare in modo che Excel crei la formula e ha funzionato. La formula risultante era esattamente la stessa di quella immessa manualmente.

La mia domanda: esiste una condizione o situazione di problema nota che può causare il mancato riconoscimento di una funzione quando viene inserita manualmente, ma funziona quando viene immessa utilizzando la procedura guidata della funzione? cioè, questo modello è diagnostico di un problema specifico sottostante?

Il wizard delle funzioni forza qualche forma di modalità, impostazione o azione oltre la semplice modifica del contenuto della cella che potrebbe comportare il riconoscimento della funzione quando altrimenti non lo è?


Ho Excel 2013, ma non ho mai riscontrato questo problema; funziona anche bene in Excel online. Può essere un bug nel 2016, ma io non la penso così. Se un riavvio del PC non aiuta, suggerirei di reinstallare Excel. Sei sicuro che OP abbia provato a inserire la formula con il separatore di elenco corretto, è un personaggio dipendente dalla lingua ed è un problema comune mancarlo.
Máté Juhász,

@ MátéJuhász, ho verificato che ciò che avevano inserito era corretto. La soluzione prevedeva una modifica minore alle formule esistenti. Mi chiedo se abbiano fatto qualcosa di strano come impostare il formato predefinito su V95-2003 per la compatibilità con i loro fogli di calcolo legacy, o qualcosa del genere. C'erano anche macro attive, sebbene fossero state bloccate da LO Calc. Non l'ho esplorato, ma potrebbero fare qualcosa di scoiattolo lì.
fixer1234,

È un comportamento davvero strano, di solito questo non accade mai. Vorrei sollevare il mio punto di vista e potrebbe essere la Formula che sta entrando in conflitto con il delimitatore, in alcuni dei paesi le persone usano la virgola anziché il decimale e il punto e virgola per separare l'elenco. Altro dovrebbe essere qualsiasi UDF con la stessa parola di riserva.
Rajesh S,

un altro, hai scritto, "La cella originale non accetterebbe la formula (trattando l'intera formula come una stringa di testo se la formula contenesse la funzione TESTO).", possibilmente la cella formattata per l'allineamento a sinistra e la formula inizia con '=, , basta controllarlo.
Rajesh S,

@RajeshS, grazie per i suggerimenti. Ho verificato ed escluso quelli. Tutto ha funzionato senza la funzione TESTO, così come con essa finché la procedura guidata ha inserito la funzione nella formula. Se è stato inserito manualmente esattamente allo stesso modo, la formula non è riuscita. Strano, eh?
fixer1234

Risposte:


-3

Di seguito sono riportati i possibili motivi per cui la formula appare nella cella come String.

  1. Controlla se c'è spazio prima del =segno della formula.

    01-01-2018       =TEXT(D8,"dd mmm")     
    
  2. Il foglio potrebbe essere in modalità Vista formula.

  3. Assicurati che il formato della cella sia impostato su "Generale" anziché "Testo".


Normalmente, queste sarebbero tutte possibilità. In questo strano caso, esisteva una formula esistente che funzionava. Era solo una concatenazione di contenuti di varie altre celle. Una di quelle celle conteneva una data e la concatenazione utilizzava il conteggio dei giorni memorizzati non più una data leggibile. La funzione TEXT è stata racchiusa attorno a quel riferimento di cella nel mezzo della stringa per formattarla. Se è stato modificato manualmente in, l'intera formula ha esito negativo (visualizzata formula come stringa di testo o prodotto un messaggio di errore generico). Se la procedura guidata per le funzioni ha fatto la stessa cosa, la formula ha funzionato.
fixer1234,

Vai alla chat sotto la mia risposta lì. L'OP ha pubblicato molte immagini oltre a un collegamento a una copia del file. Ho fatto in modo che quella copia funzionasse in LO Calc con la modifica manuale, ma la modifica non funzionava per l'OP, funzionava solo la procedura guidata.
fixer1234,

Va bene ,, grazie ,,, è davvero diverso e importante per la ricerca ,, :-)
Rajesh S

@ fixer1234 ,, Ho visto anche la relativa domanda e la schermata allegata, e la mia conclusione è che, ** "Excel non produce mai la data corrente nel formato che ha scritto, quando usato = TOday (). E in Cella O11, se ha ottenuto il valore 15042018 dopo aver utilizzato Concatenate, il valore è solo un numero non è una data e poiché è un valore numerico, il formato non supporta il comando TEXT. Ha semplicemente bisogno di un approccio diverso, , come convertire il numero in data "**.
Rajesh S,

Posso fornire la soluzione perfetta per questo Ma sto aspettando la conferma che la mia percezione è corretta e vuole che lo stesso risolva.
Rajesh S,

-3

Ora il problema è stato risolto.

Le mie scoperte sul problema:

  1. In precedenza la cella della formula B10 era stata formattata come TESTO.
  2. La formula sta reding la data corrente da N12.
  3. La cella N12 era avvolta con la funzione TEXT e originariamente il formato era ggmmaaaa, nessun delimitatore.

Soluzione che ho applicato:

  1. Modificato il formato della cella di formula B10 in GENERALE.

  2. Modificata la formula e incluso il formato desiderio come, Text(N12,"DD/MM/YYYY").

Ora Excel sta considerando la formula in B10 come una FORMULA, non una STRING, e ha anche prodotto il risultato nel formato desiderio.

Controlla la schermata qui sotto.

inserisci qui la descrizione dell'immagine


2
Come ho spiegato, questo non era il problema e la formattazione delle celle è stata esclusa. Ricorda, c'era già una funzione attiva lì; ha smesso di essere riconosciuto come una funzione quando è stato modificato manualmente per avvolgere la funzione TEXT attorno al riferimento di cella. Inoltre, come ho descritto, sono stato similmente in grado di farlo funzionare sul mio sistema, ma l'OP non poteva sul loro. Questa risposta non affronta la domanda.
fixer1234
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.