Perché diavolo Excel non può gestire 2 file con lo stesso nome? [chiuso]


90

Questo mi infastidisce per tutta la mia vita IT: ho lavorato con 7 diverse versioni di Excel per oltre 20 anni, con grandi cambiamenti in ogni versione, costringendomi a cercare dove le vecchie funzionalità sono nascoste nella nuova versione - ma una sola cosa rimane solida come una roccia: l'impossibilità di aprire due file con lo stesso nome.

Spiacenti, Excel non può aprire due cartelle di lavoro con lo stesso nome contemporaneamente.

Quindi desidero davvero un'analisi qui, perché questo è ancora il caso di Excel 2013, che non era nemmeno necessario implementare in Excel 95? C'è qualche motivo tecnico o progettuale all'interno delle strutture dati di Excel o delle elaborazioni interne per cui non può gestire due oggetti File con percorsi diversi ma lo stesso nome file? Non voglio che Microsoft picchi qui, voglio solo capire il motivo alla base.


3
Votato per la migrazione a Super User. Non correlato in alcun modo alla programmazione.
brettdj

1
@brettdj: ho pensato lo stesso anch'io, ma poiché non è una domanda sull'utilizzo dell'applicazione, ma sulla ragione tecnica alla base, che a sua volta si riferisce all'implementazione, direi che si adatta anche qui.
Alexander Rühl

6
Nessun altro software che utilizzo presenta questo problema. "Spiacenti, Mozilla Firefox non può aprire due file denominati index.html contemporaneamente."
Colonel Panic

@ColonelPanic Come risolveresti il problema a causa del quale Microsoft ha posto questa restrizione?
GSerg

Risposte:


76

Microsoft afferma che qui è dovuto all'ambiguità di calcolo con le celle collegate.

Se avevi una cella = '[Book1.xlsx] Sheet1'! $ G $ 33 e avevi due libri chiamati 'Book1' aperti, non c'è modo di dire quale intendi.

Questo modo di fare riferimento alle cartelle di lavoro collegate per nome nelle celle persiste in tutte le versioni e dubito molto che cambierà.


41
Adesso pensiamo. Quale percentuale di utenti che incontra quella frustrante limitazione di aprire due file con lo stesso nome, aveva effettivamente quel tipo di collegamento in uno dei documenti? La mia ipotesi è dello 0,001%. Quindi, a causa dello 0,001% degli utenti, il 99,9999% dovrebbe trovare la soluzione alternativa, rinominare i file, ecc. Non è stupido? Perché semplicemente non consentire di aprire quei file e dare un errore SOLO se il riferimento come quello esiste effettivamente (o semplicemente non calcolare tali celle e dare un errore quando l'utente fa clic su di esso).
Mike Keskinov

10

SI, PUOI!!! (Ma penso che questo sia un bug di Excel)


Prova questo:

  1. Sul desktop fai clic con il pulsante destro del mouse e scegli "Nuovo" => "Foglio di lavoro Microsoft Excel".
  2. Rinomina il file in "Test [1] .xlsx" (il nome è importante!)
  3. Ora crea una cartella now sul desktop e incolla una copia del file "Test [1] .xlsx" al suo interno
  4. Apri entrambi "Test [1] .xlsx" tramite doppio clic: Et voilà!

Ora le due cartelle di lavoro (con lo stesso nome) sono aperte in Excel. Ma se guardi nelle proprietà "Workbook.Name", diventa ancora più strano, perché internamente sono entrambi rinominati in "Test (1) .xlsx".

Questo perché Excel necessita internamente dei caratteri speciali "[]" per le sue formule.

Quindi non sono (normalmente) consentiti per un nome di cartella di lavoro, ma una cartella di lavoro denominata "Test [1] .xlsx" esternamente può essere comunque aperta, che cosa è un bug per me!

Perché? Perché ti metti davvero nei guai come programmatore se vuoi affrontare entrambe queste cartelle di lavoro usando "Application.Workbooks [nome]", che non fallisce, ma fornisce sempre la prima trovata con questo nome!

Jörg


risposta interessante @jreichert, puoi spiegare "Workbook.Name" -Parte delle proprietà? Dovrei eseguirlo nel prompt dei comandi o qualcosa del genere?
Ashrith

1
@ Ashrith: vai alla finestra immediata di Excel VBA (ALT + F11, CTRL + G). Utilizzo: vedere excelcampus.com/vba/vba-immediate-window-excel Quindi digitare :? Application.Workbooks (1) .Nome e premi
Invio

9

Per tutte le persone che finiscono qui, perché vorrebbero aprire due file Excel con lo stesso nome contemporaneamente:

Anche se Excel stesso non consente di farlo a causa di circostanze (certamente discutibili) dichiarate da Baldrick nella sua risposta , esistono almeno soluzioni alternative che consentono di aprire più file xls / xlsx con lo stesso nome contemporaneamente in istanze di Excel separate /processi.

Le soluzioni alternative sono spiegate in questo thread sui forum How-To Geek .

C'è anche una sorta di correzione "incorporata" con l'aiuto dell'impostazione Ignore other applications that use Dynamic Data Exchange (DDE), che funziona per me, ma porta a errori quando si chiude Excel e si prova ad aprire nuovamente un file facendo doppio clic su di esso.

Ho dovuto cercare la correzione del registro, che funziona bene. NOTA ANCHE CHE questa soluzione alternativa, una volta applicata, impedirà il riferimento incrociato delle celle tra TUTTE le tabelle Excel aperte (anche quelle con nomi diversi), poiché le istanze separate di Excel non sono consapevoli l'una dell'altra (almeno secondo i test che ho appena fatto).

Potresti invece scegliere la correzione che aggiunge una nuova voce del menu contestuale Open Separatea Explorer e usarla solo se in realtà vuoi aprire due file con lo stesso nome allo stesso tempo.


Collegamento molto buono, grazie - in effetti l'ho già provato da qualche altra fonte con l'apertura principalmente in un'istanza separata, ma mi sono ritirato di nuovo, ma penso che sceglierei la voce del menu contestuale per aprirlo separatamente se necessario.
Alexander Rühl
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.