Documentazione/Funzioni di Calc/DDE
TDF LibreOffice Document Liberation Project Blog comunitari Weblate Nextcloud Redmine Ask LibreOffice Donazione
Nome funzione:
DDE
Categoria:
Foglio di calcolo
Riepilogo:
Dynamic Data Exchange (DDE) è un protocollo legacy che può essere utilizzato per condividere dati tra applicazioni.
La funzione DDE avvia una "conversazione" tra Calc (il "client") e un'altra applicazione che supporta DDE (il "server "), consentendo al server di passare i dati richiesti al client come risultato della chiamata di funzione. Ogni volta che il server rileva successivamente una modifica nei dati di interesse, trasmette automaticamente l'aggiornamento al client.
Gli oggetti DDE sono collegati tramite riferimento alla loro origine; non sono incorporati nel foglio di calcolo di destinazione.
Sintassi:
DDE(Server; Argomento/File; Elemento/Intervallo [; Modo])
Restituisce:
Restituisce i dati appropriati da una richiesta DDE.
Argomenti:
Server è una stringa di testo (tra virgolette) o un riferimento a una cella contenente tale stringa di testo, ovvero il nome di un'applicazione server. Il nome del server per LibreOffice è "soffice"; altri server DDE potrebbero essere presenti sul tuo sistema (ad esempio, "excel" per Microsoft Excel e "winword" per Microsoft Word). Tuttavia, la disponibilità di altri server dipenderà dal tuo sistema informatico, dalla sua configurazione e dai suoi contenuti: ulteriori discussioni su questo aspetto vanno oltre lo scopo di questa pagina wiki.
Argomento/File è una stringa di testo (tra virgolette), oppure un riferimento ad una cella contenente tale stringa di testo, ovvero il nome completo del file contenente i dati di interesse, inclusa l'indicazione del percorso. DDE attualmente non supporta l'uso di percorsi relativi in questo argomento.
Elemento/Intervallo è una stringa di testo (tra virgolette) o un riferimento a una cella contenente tale stringa di testo, che identifica i dati specifici da restituire. Ad esempio, potrebbe trattarsi di un'area con nome o di un riferimento a un intervallo di celle per un foglio di calcolo di Calc, oppure del nome di una sezione o di un segnalibro per un documento di Writer.
Modo è un valore intero, o un riferimento a una cella contenente quell'intero, ovvero un codice per controllare il metodo con cui il server DDE converte i suoi dati in numeri. Può essere impostato su 0, 1 o 2, con il significato assegnato a ciascun codice riportato nella tabella seguente.
Modo | Effetto |
---|---|
0 o omesso | Dati convertiti in numero, se possibile, utilizzando lo stile di cella predefinito. |
1 | Dati convertiti in numero, se possibile, nel formato inglese americano (ad esempio, con "." come separatore decimale). |
2 | I dati vengono recuperati come testo, senza conversione in numero. |
- Se uno qualsiasi di Argomento/File, Server e Elemento/Intervallo non sono validi, allora DDE segnala un errore #N/D.
- Se Modo non è numerico, allora DDE segnala un errore #VALORE! errore.
- Se Modo è un valore negativo, allora DDE segnala un errore di argomento non valido (Err:502).
- Se Modo è un valore non intero, viene troncato a un numero intero.
- Se, dopo il troncamento, Modo è maggiore di 2, viene ripristinato il valore predefinito di 0.
- Se apri un foglio di calcolo di Calc contenente una chiamata alla funzione DDE e Calc non riesce a stabilire una conversazione DDE per gli argomenti specificati, verrà visualizzato un avviso viene visualizzata la finestra di dialogo.
Dettagli aggiuntivi:
- DDE sta per "Dynamic Data Exchange", che è un predecessore di OLE, "Object Linking and Embedding".
- I collegamenti multipiattaforma, ad esempio da un'installazione di LibreOffice in esecuzione su una macchina Windows a un documento residente su una macchina Linux, non sono supportati.
- Il server LibreOffice DDE si chiama "soffice" e consente la condivisione dei dati tra i file Writer e Calc. Tuttavia, più in generale, la funzione DDE non è portabile perché dipende dalla disponibilità di server DDE esterni e dalla loro interpretazione del Argomento/File e Elemento/Intervallo.
- Se utilizzi Microsoft Excel per aprire un foglio di calcolo di Calc che contiene chiamate alla funzione DDE, le chiamate alla funzione DDE verranno sostituite da dati statici perché Excel non fornisce una funzione equivalente.
- Quando aprite un foglio di calcolo Calc che contiene collegamenti DDE, potreste essere avvisato che l'aggiornamento automatico dei collegamenti esterni è stato disabilitato. Fate clic sul pulsante Consenti aggiornamento per abilitare i collegamenti.
- Il comando ▸ sulla barra dei menu elenca i collegamenti DDE e consente loro di essere modificati, aggiornati manualmente o interrotti. Quando viene creato inizialmente un collegamento DDE, l'impostazione Aggiorna nella finestra di dialogo Modifica collegamenti viene impostata su Automatico per impostazione predefinita. Questa impostazione significa che se avete entrambi i file aperti e apportate una modifica ai dati collegati, tale modifica si rifletterà automaticamente nel file contenente la chiamata alla funzione DDE, senza ulteriori interazione. Per un singolo collegamento DDE, è possibile modificare l'impostazione Aggiorna nella finestra di dialogo Modifica collegamenti su Manuale. Con questa impostazione, qualsiasi modifica ai dati collegati non si rifletterà nel file contenente la chiamata alla funzione DDE finché non aggiornate manualmente il collegamento.
- La funzione DDE è particolarmente potente se inserita come formula di matrice. Per creare una formula in forma di matrice, digitare la formula nella riga di input nella parte superiore della finestra di Calc e al termine premere Maiusc+Control+Invio (Maiusc+' 'Comando+Invio su macOS) anziché il più consueto Invio. In alternativa, utilizzare la Creazione guidata funzione per creare la chiamata alla funzione DDE e selezionare il pulsante di attivazione/disattivazione Matrice prima di premere OK. Se fai clic su una cella che contiene una formula in forma di matrice e visualizzi la formula nella riga di input, il contenuto di quella cella sarà circondato da parentesi graffe, ad esempio
{=DDE("soffice"; "C:\I miei file\league tables.ods"; "Division1")}
. Non è possibile creare una formula di matrice semplicemente digitando le parentesi graffe attorno a una formula non di matrice. - Un esempio di utilizzo di DDE in una formula di matrice potrebbe verificarsi quando si deve creare un collegamento DDE in modo che una sezione di testo in un documento di Writer (composto da più paragrafi) può essere copiato in un foglio di calcolo di Calc. Potreste inserire una formula non matriciale come
=DDE("soffice"; "C:\report.odt"; "Introduzione")
per creare questo collegamento e importate il testo dalla sezione di Writer denominata "Introduzione" situata nel file "C:\report.odt". Tuttavia, questa formula fornirà solo il primo paragrafo della sezione; per includere tutti i paragrafi della sezione, inserite il collegamento DDE come formula di matrice. Va notato che una volta creato il collegamento DDE utilizzando una formula di matrice, il numero massimo di paragrafi è limitato al numero restituito inizialmente. I paragrafi aggiuntivi aggiunti alla fine della sezione nel documento di Writer non appariranno nel foglio di calcolo di Calc. Allo stesso modo, se utilizzate una formula di matrice per creare un collegamento DDE a una tabella in un file di Writer, le dimensioni massime della tabella nel foglio di calcolo di Calc sarebbero limitate a quelle originali misurare. - Un metodo alternativo per creare un collegamento DDE consiste nel copiare la cella o l'intervallo dal file sorgente negli appunti, quindi utilizzare il comando ▸ ▸ ▸ . Il collegamento viene inserito come funzione DDE, come formula di matrice.
Esempi:
Copia dei dati da un altro foglio di calcolo
Formula | Descrizione | Restituisce |
---|---|---|
=DDE("soffice"; "c:\spreadsheets\dde_test.ods"; "Foglio1.D10") dove la cella Foglio1.D10 nel foglio di calcolo specificato contiene il numero 345,678. | Qui la funzione restituisce il contenuto della cella D10 nel Foglio1 del foglio di calcolo c:\spreadsheets\dde_test.ods. Il numero restituito viene visualizzato nello stile di cella predefinito. | 345,678 |
=DDE("soffice"; "c:\spreadsheets\dde_test.ods"; "Foglio1.D11"; 2) dove la cella Foglio1.D11 nel foglio di calcolo specificato contiene il numero 456,789. | Qui la funzione restituisce il contenuto della cella D11 nel Foglio1 del foglio di calcolo c:\spreadsheets\dde_test.ods. Il valore restituito viene visualizzato come testo anziché come numero. | 456,789 |
=DDE(A1; A2; A3; A4) dove le celle da A1 a A3 contengono le stringhe "soffice", "c:\spreadsheets\dde_test.ods" e "Foglio1. D12" rispettivamente (da scrivere senza virgolette), mentre la cella A4 contiene il numero 2; Il Foglio1.D12 nel foglio di calcolo specificato contiene il numero 567,89. | Qui la funzione restituisce il contenuto della cella D12 nel Foglio1 del foglio di calcolo c:\spreadsheets\dde_test.ods. Il valore restituito viene visualizzato come testo anziché come numero. | 567,89 |
Copiare dati da un documento di testo
Nell'esempio seguente, il file di Writer c:\spreadsheets\analisi dei dati di velocità.odt include una tabella denominata raw-measurements che contiene i seguenti dati:
tempo | km/h |
---|---|
00:00 | 66 |
00:00 | 61 |
00:28 | 38 |
00:28 | 82 |
00:28 | 82 |
00:43 | 46 |
00:43 | 104 |
00:43 | 114 |
01:12 | 101 |
Formula | Descrizione | Restituisce |
---|---|---|
{=DDE("soffice", "c:\spreadsheets\analisi dei dati di velocità.odt", "raw-measurements", 2)} con la formula inserita nella cella A1. | Qui la formula è stata inserita come formula di matrice tramite Maiusc+Control+Invio (Maiusc+Comando+Invio su macOS). La formula restituisce il contenuto della tabella delle misurazioni grezze dal file di Writer c:\spreadsheets\analysis of speed data.odt e visualizza tali dati in un'unica colonna. Ogni paragrafo in una cella della tabella di origine viene visualizzato nella propria cella. Il contenuto della cella in alto a sinistra della tabella viene visualizzato per primo, seguito in ordine dalle altre celle nella riga superiore e dalle altre righe in ordine.
Con i dati di esempio sopra indicati:
e così via. |
Vedete la descrizione |
Per gli esempi seguenti, si supponga che sia presente un file di Writer denominato mottos.odt nella cartella c:\miscellaneous. Questo documento contiene una sezione denominata Motti vari che contiene tre paragrafi, comprendenti le seguenti stringhe di testo:
- Pensa prima di parlare.
- Domani è un altro giorno.
- Il tempo che ti piace sprecare non è tempo sprecato.
Tieni presente che in Writer, le sezioni vengono create e denominate utilizzando
▸ sulla barra dei menu e i nomi delle sezioni esistenti possono essere visualizzati utilizzando il Navigatore ( ▸ ).Formula | Descrizione | Restituisce |
---|---|---|
=DDE("soffice"; "c:\miscellaneous\mottos.odt"; "Motti vari") | Qui la funzione restituisce il contenuto del primo paragrafo della sezione. | Pensa prima di parlare. |
{=DDE("soffice"; "c:\miscellaneous\mottos.odt"; "Motti vari")} con la formula inserita nella cella A1. | Qui la formula è stata inserita come formula di matrice tramite Maiusc+Control+Invio (Maiusc+Comando+Invio su macOS). In questo caso vengono restituite tutte e tre le stringhe e Calc le dispone in una colonna. La cella A1 mostra "Pensa prima di parlare.", la cella A2 mostra "Domani è un altro giorno." e la cella A3 mostra "Il tempo che ti piace sprecare non è tempo sprecato". | A1 - Pensa prima di parlare. A2 - Domani è un altro giorno. |
Funzioni di LibreOffice correlate:
Nessuno.
Standard ODF:
Funzioni equivalenti (o simili) di Excel:
Nessuno