* * * *

Privacy Policy

Blog italiano

Clicca qui se vuoi andare al blog italiano su Lazarus e il pascal.

Forum ufficiale

Se non siete riusciti a reperire l'informazione che cercavate nei nostri articoli o sul nostro forum vi consiglio di visitare il
Forum ufficiale di Lazarus in lingua inglese.

Lazarus 1.0

Trascinare un file nel programma
DB concetti fondamentali e ZeosLib
Recuperare codice HTML da pagina web
Mandare mail con Lazarus
Stabilire il sistema operativo
Esempio lista in pascal
File INI
Codice di attivazione
Realizzare programmi multilingua
Lavorare con le directory
Utilizzare Unità esterne
TTreeView
TTreeview e Menu
Generare controlli RUN-TIME
LazReport, PDF ed immagini
Intercettare tasti premuti
Ampliare Lazarus
Lazarus e la crittografia
System Tray con Lazarus
UIB: Unified Interbase
Il file: questo sconosciuto
Conferma di chiusura di un applicazione
Liste e puntatori
Overload di funzioni
Funzioni a parametri variabili
Proprietà
Conversione numerica
TImage su Form e Panel
Indy gestiore server FTP lato Client
PopUpMenu sotto Pulsante (TSpeedButton)
Direttiva $macro
Toolbar
Evidenziare voci TreeView
Visualizzare un file Html esterno
StatusBar - aggirare l'errore variabile duplicata
Da DataSource a Excel
Le permutazioni
Brute force
Indy 10 - Invio email con allegati
La gestione degli errori in Lazarus
Pascal Script
Linux + Zeos + Firebird
Dataset virtuale
Overload di operatori
Lavorare con file in formato JSON con Lazarus
Zeos ... dietro le quinte (prima parte)
Disporre le finestre in un blocco unico (come Delphi)
Aspetto retrò (Cmd Line)
Lazarus 1.0
Come interfacciare periferica twain
Ubuntu - aggiornare free pascal e lazarus
fpcup: installazioni parallele di lazarus e fpc
Free Pascal e Lazarus sul Raspberry Pi
Cifratura: breve guida all'uso dell'algoritmo BlowFish con lazarus e free pascal.
Creare un server multithread
guida all'installazione di fpc trunk da subversion in linux gentoo
Indice
DB concetti fondamentali e connessioni standard
Advanced Record Syntax
DB concetti fondamentali e DBGrid
DB concetti fondamentali e TDBEdit, TDBMemo e TDBText
Advanced Record Syntax: un esempio pratico
Superclasse form base per programmi gestionali (e non)
Superclasse form base per programmi gestionali (e non) #2 - log, exception call stack, application toolbox
Superclasse form base per programmi gestionali (e non) #3 - traduzione delle form
Superclasse form base per programmi gestionali (e non) #4 - wait animation
Un dialog per la connessione al database:TfmSimpleDbConnectionDialog
Installare lazarus su mac osx sierra
immagine docker per lavorare con lazarus e free pascal
TDD o Test-Driven Development
Benvenuto! Effettua l'accesso oppure registrati.
Novembre 25, 2024, 10:37:47 pm

Inserisci il nome utente, la password e la durata della sessione.

63 Visitatori, 2 Utenti
   

Autore Topic: fpspreadsheet come usarlo?  (Letto 10104 volte)

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
fpspreadsheet come usarlo?
« il: Ottobre 26, 2011, 03:29:52 pm »
Già che ci siamo vediamo se mi chiarite anche questo  :D

Ho da leggere dei file Excel e fare certe operazioni con i dati contenuti.

Ho trovato alcuni componenti esterni ma preferisco usarne il meno possibile.

Ho sentito di questo componente fpspreadsheet reperibile solo via SVN qui
http://lazarus-ccr.svn.sourceforge.net/viewvc/lazarus-ccr/components/fpspreadsheet/

Ho scaricato da sotto dove dice "Download GNU tarball" e poi ho aggiunto il pacchetto in Lazarus ricompilando l'IDE, solo che ora non so come richiamarlo dal progetto, non trovo nessun fpspreadsheet da aggiungere nello "uses"

Lo avete già provato per caso?

xinyiman

  • Administrator
  • Hero Member
  • *****
  • Post: 3278
  • Karma: +12/-0
Re:fpspreadsheet come usarlo?
« Risposta #1 il: Ottobre 26, 2011, 03:34:37 pm »
Si lo avevo provato e mi era stata molto utile questa pagina

http://wiki.lazarus.freepascal.org/FPSpreadsheet

Per usarlo devi mettere le seguenti unit

uses
 ...,fpspreadsheet, fpsallformats, fpspreadsheet_pkg;

Fammi sapere.  ;)
Ieri è passato, domani è futuro, oggi è un dono...

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #2 il: Ottobre 26, 2011, 03:50:17 pm »
E' proprio quello il problema, pur avendo compilato l'IDE e pur vedendo il componente nei pacchetti installati se provo a scriverlo e a richiamare il code completation dell' IDE non me lo vede lo stesso.

Se lo forzo a mano e metto quello che mi hai detto ottengo questo:
Codice: [Seleziona]
Unit1.pas(9,20) Fatal: Can't find unit fpspreadsheet used by Unit1

xinyiman

  • Administrator
  • Hero Member
  • *****
  • Post: 3278
  • Karma: +12/-0
Re:fpspreadsheet come usarlo?
« Risposta #3 il: Ottobre 26, 2011, 04:45:34 pm »
Allora, per prima cosa ho scaricato ed installato la versione SVN dalla pagina che ti avevo linkato poco sopra.

Poi sono andato a spulciare gli esempi contenuti nel pacchetto, tipo qui:

\fpspreadsheet\examples\excel5demo

E ho provato a compilarli. Funzionano, devono essere cambiati i nomi delle unit rispetto all'esempio online.
Ieri è passato, domani è futuro, oggi è un dono...

Loryea

  • Global Moderator
  • Full Member
  • *****
  • Post: 117
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #4 il: Ottobre 26, 2011, 09:38:03 pm »
Mi spiace per l'ignoranza, ma io non ho proprio capito cos'é fpspreadsheet, i siti non sono così chiari... Se qualcuno sarebbe così gentile da farmi un risassunto generale, potrei provare anch'io a scaricare la SVN e a compilare qualche decina righe per farvi sapere, OK?

xinyiman

  • Administrator
  • Hero Member
  • *****
  • Post: 3278
  • Karma: +12/-0
Re:fpspreadsheet come usarlo?
« Risposta #5 il: Ottobre 26, 2011, 11:46:45 pm »
Se vai a questa pagina http://wiki.lazarus.freepascal.org/FPSpreadsheet troverai il link per scaricare tramite svn, che è il seguente:

svn co https://lazarus-ccr.svn.sourceforge.net/svnroot/lazarus-ccr/components/fpspreadsheet fpspreadsheet

Devi scaricare questi dati nella directory components dove è installato Lazarus. Poi avvi Lazarus e installi il nuovo package tramite la solita procedura per installare i file .lpk

Una volta installato nella stessa cartella scaricata con svn trovi anche una cartella che si chiama examples in cui trovi degli esempi (solo più da compilare) per capire come funziona. Spero di essere riuscito a spiegarmi correttamente.
Ieri è passato, domani è futuro, oggi è un dono...

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #6 il: Ottobre 27, 2011, 08:44:39 am »
Allora ho provato ad aprire direttamente il file di esempio "excel5demo" e non chiedermi il perchè su quello il pacchetto lo riconosce  :o

Ora voi che siete più esperti mi sapete spiegare come mai questo sul progetto di esempio la unit fpspreadsheet la riconosce:

Codice: [Seleziona]
uses
  Classes, SysUtils, fpspreadsheet, xlsbiff5,
  laz_fpspreadsheet;

E invece nel mio fpspreadsheet dice che è inesistente?

Codice: [Seleziona]
uses
  Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls,
  EditBtn, fpspreadsheet, fpsallformats, fpspreadsheet_pkg;

Da qualche parte nelle proprietà del progetto serve aggiungere ancora qualcosa?

Ah giusto per informazione nel mio progetto non riconosce nemmeno gli altri due xlsbiff5 e laz_fpspreadsheet
« Ultima modifica: Ottobre 27, 2011, 09:11:01 am da Fabio »

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #7 il: Ottobre 27, 2011, 10:17:36 am »
Se puoi magari prova a fare un nuovo progertto e guarda se a te i pacchetti te li riconosce oppure no, nell'esempio funziona ma se faccio nuovo progetto non c'è verso a farglielo riconoscere, per questo presumo che manchi qualcosa a livello di progetto che non vedo.

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #8 il: Ottobre 27, 2011, 11:28:08 am »
Trovato  :D

Ho aperto il menu Progetto, Analizzatore Progetti.
Ho fatto Aggiungi, Nuovo requisito
In Nome pacchetto ho forzato laz_fpspreadsheet
Dopo questo mi ha riconosciuto le aggiunte.
Ora provo se riesco a cavarne qualcosa.

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #9 il: Ottobre 27, 2011, 03:02:05 pm »
Alè primi errori.

Dichiaro come:
Codice: [Seleziona]
xlsWrkB: TsWorkbook;
xlsWrkS: TsWorksheet;

E poi provo a leggere un file Excel esistente ma va già in errore qua ( ovviamente fileName è istanziato con il percorso completo al file da aprire ):

Codice: [Seleziona]
xlsWrkB.ReadFromFile(fileName);

Ho provato anche a passare come secondo parametro sia sfExcel5 che sfExcel8 ( subito non l'ho messo che sulla doc si diceva che faceva da solo in automatico se non metti niente ).

L'errore che ottengo in caso di nessun secondo parametro è:

Citazione
blablabla ... raised exception class 'External: SIGSEGV'.

In caso metta ad esempio sfExcel5 ottengo invece:

Citazione
blablabla ... raised exception class 'EStreamError' with message: unable to open /Book

Ogni consiglio è ben accetto  :D

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #10 il: Ottobre 27, 2011, 03:06:54 pm »
Ehm  :-[ come non detto.

Manvaca:

Codice: [Seleziona]
xlsWrkB:=TsWorkbook.Create;

prima del ReadFromFile, sorry.

Fabio

  • Full Member
  • ***
  • Post: 106
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #11 il: Ottobre 27, 2011, 03:16:05 pm »
Per completezza aggiungo i comandi per leggere il contenuto di una cella:

Codice: [Seleziona]
var
  fileName: String;
  xlsWrkB: TsWorkbook;
  xlsWrkS: TsWorksheet;

begin
     fileName:='c:\miodoc.xls'; {selezionabile magari da un TFileNameEdit}
     xlsWrkB:=TsWorkbook.Create;
     xlsWrkB.ReadFromFile(fileName);
     xlsWrkS:=xlsWrkB.GetFirstWorksheet;
     ShowMessage(xlsWrkS.ReadAsUTF8Text(1,1)); {mostra il contenuto della cella B2}
end;

xinyiman

  • Administrator
  • Hero Member
  • *****
  • Post: 3278
  • Karma: +12/-0
Re:fpspreadsheet come usarlo?
« Risposta #12 il: Ottobre 27, 2011, 03:35:29 pm »
Bravo :)

Quindi ora ti sei impadronito dello strumento :)
Ieri è passato, domani è futuro, oggi è un dono...

Gersen

  • Newbie
  • *
  • Post: 1
  • Karma: +0/-0
Re:fpspreadsheet come usarlo?
« Risposta #13 il: Febbraio 04, 2012, 11:00:19 am »
Ho provato anch'io questo codice, ma l'ultima riga da sempre errore:

ShowMessage(xlsWrkS.ReadAsUTF8Text(1,1)); {mostra il contenuto della cella B2} 

Errore: Project (nome progetto) raised exception class 'External: SIGSEGV'.

xinyiman

  • Administrator
  • Hero Member
  • *****
  • Post: 3278
  • Karma: +12/-0
Re:fpspreadsheet come usarlo?
« Risposta #14 il: Febbraio 05, 2012, 10:10:25 pm »
Gersen dicci di più, posta il tuo codice e dicci cosa fa...
Ieri è passato, domani è futuro, oggi è un dono...

 

Recenti

How To

Utenti
  • Utenti in totale: 803
  • Latest: maXim.FI
Stats
  • Post in totale: 19198
  • Topic in totale: 2289
  • Online Today: 68
  • Online Ever: 900
  • (Gennaio 21, 2020, 08:17:49 pm)
Utenti Online
Users: 2
Guests: 63
Total: 65

Disclaimer:

Questo blog non rappresenta una testata giornalistica poiché viene aggiornato senza alcuna periodicità. Non può pertanto considerarsi un prodotto editoriale ai sensi della legge n. 62/2001.