Roboitalia.com - Il primo portale in Italia sulla robotica amatoriale

Roboitalia.com - Il primo portale in Italia sulla robotica amatoriale (http://forum.roboitalia.com/index.php)
-   P. in Visual Basic (http://forum.roboitalia.com/forumdisplay.php?f=29)
-   -   Visual Basic ed Excel (http://forum.roboitalia.com/showthread.php?t=8282)

salva214 13-10-2011 20.55.35

Visual Basic ed Excel
 
Ciao a tutti ragazzi,
dovrei realizzare per lavoro un programma che mi generi un documento excel tenendo in considerazione dei parametri che abilitano o meno dei "pezzi" di questo documento...
il documento dovrà essere una sorta di report composto da elementi fissi come intestazione e piè pagina, introduzione eccetera, ed elementi variabili come le tabelle in cui verranno raccolti dei dati sperimentali...
quello che volevo sapere è se posso o meno realizzare tutto cio con visual basic, tramite flag e tabelle pre-scritte, o se devo orientarmi su qualcos'altro per programmare....
grazie a chi mi risponderà e scusate se è troppa roba >.<

Ziko 14-10-2011 00.30.21

Io se fossi in te considererei l'idea di fare in VBA (Visual Basic for Application) in sostanza è si Visual Basic ma che sta direttamente collegato ai fogli di excel e da li fai tutto quello che vuoi con celle e varie.
Documentati su questo VBA... io ho avuto modo di lavorarci un pò e ci ho fatto un modulo di comunicazione via USB che si prende i dati da un dispositivo esterno e me li mette bellini bellini dove voglio e poi genera un grafico alla fine... forse è simile a quello che vorresti fare!

salva214 14-10-2011 15.56.46

allora, come consigliatomi ho sperimentato il vb integrato ad excel, ma sono ancora ad un punto abbastanza fermo...
sono riuscito a generare delle macro per caricare immagini e dimensionarle automaticamente, ma volevo sapere se si può fare, e come, una cosa del tipo:
-ho un file excel esterno
--in questo file ho piu fogli che indicano diverse procedure e/o argomenti ed ogni foglio contiene un "pezzo" del documento finale, ma in forma estesa, vale a dire:
oggi studio il componente "A"; questo componente ha bisono di queste, queste e questi altri test (ma non tutti!!);
oggi studio il componente "B"; questo componente ha bisono di alcune prove che ho fatto su "A" ma anche altre (ma non tutte!!);
in poche parole come se i fogli fossero l'insieme piu esterno a cui appartengono poi tutti i sotto insiemi che rappresentano le prove dei singoli componenti...

quindi siccome le procedure sono racchiuse in tabelle, intendevo scrivere nei fogli del "database" tutti i passaggi possibili immaginabili per poi andare a leggere e copiare solo quelli che mi interessano (settati tramite flag in un form) per la relazione di un dato componente...

quindi per modulare intendo una cosa che in fine faccia:
-setto i flag;
-copio intestazione;
-leggo il 1 gruppo di flag riguardanti il primo argomento del test (ah, i flag hanno un ordine di priorità!) e copio le parti che interessano;
-leggo il 2 gruppo, ecc...
-se arrivo a fine pagina copio piè pagina e dinuovo intestazione e riparto da dove ero rimasto con i gruppi di flag...

dite che è troppo complicato? :S >.< :eek:

Ziko 14-10-2011 16.07.54

Niente è troppo complicato. Ma non torverai nessuno qui che lo farà per te! Inoltre il VBA esisite ma come ogni linguaggio di programmazione va studiato. Studiatelo e poi facci quello che vuoi. Dalla tua descrizione non so neanche darti un consiglio per non ho assolutamente capito che cosa vuoi fare!

sergio_camici 14-10-2011 16.49.36

Citazione:

Orginalmente inviato da salva214 (Messaggio 52280)
dite che è troppo complicato? :S >.< :eek:

Non è complicato, semplicemente non è un lavoro per un foglio elettronico.
Io punterei più ad un database, se sei affezionato ai prodotti Microsoft usa Access.

salva214 14-10-2011 17.59.47

Citazione:

Orginalmente inviato da Ziko (Messaggio 52281)
Niente è troppo complicato. Ma non torverai nessuno qui che lo farà per te! Inoltre il VBA esisite ma come ogni linguaggio di programmazione va studiato. Studiatelo e poi facci quello che vuoi. Dalla tua descrizione non so neanche darti un consiglio per non ho assolutamente capito che cosa vuoi fare!

ma infatti io non ho chiesto che qualcuno lo facesse al posto mio!! e poi il VB lo conosco perche ci ho programmato varie volte, ma non so come collegarlo ad excel!! volevo solo qualche dritta o addirittura una alternativa ad excel per realizzare quello che mi serve!
Comunque riassumo il concetto:
Ho una serie di apparecchi, simili ma non uguali, che hanno bisogno di stessi tipi di test ma piu o meno approfonditi! questi test devono poi essere riportati in una relazione che ogni volta va scritta a mano con word e anche se le modifiche sono leggere (allungare o ridurre tabelle, cambiare grafici/immagini e così via) richiedono un sacco di tempo (è un documento di piu di 80 pag!!!)...
è per questo che volevo chiedere se esisteva il modo di realizzarlo in modo automatico fornendo ad un programma quelli che io definisco "moduli" ma che in realtà sarebbero tabelle!...preferivo excel perchè almeno una volta creato il doc potevo collegare le celle dove va riportata la misura con un file in modo che le sistemasse in automatico!...

Ziko 14-10-2011 23.08.02

Citazione:

Orginalmente inviato da salva214 (Messaggio 52283)
ma infatti io non ho chiesto che qualcuno lo facesse al posto mio!! e poi il VB lo conosco perche ci ho programmato varie volte, ma non so come collegarlo ad excel!! volevo solo qualche dritta o addirittura una alternativa ad excel per realizzare quello che mi serve!
Comunque riassumo il concetto:
Ho una serie di apparecchi, simili ma non uguali, che hanno bisogno di stessi tipi di test ma piu o meno approfonditi! questi test devono poi essere riportati in una relazione che ogni volta va scritta a mano con word e anche se le modifiche sono leggere (allungare o ridurre tabelle, cambiare grafici/immagini e così via) richiedono un sacco di tempo (è un documento di piu di 80 pag!!!)...
è per questo che volevo chiedere se esisteva il modo di realizzarlo in modo automatico fornendo ad un programma quelli che io definisco "moduli" ma che in realtà sarebbero tabelle!...preferivo excel perchè almeno una volta creato il doc potevo collegare le celle dove va riportata la misura con un file in modo che le sistemasse in automatico!...

Io non ho detto VB... Ho detto VBA e non c'è da collegare nulla, questo sta dietro ogni programma della suite office e vi si accede andando nella sezione sviluppo (premendo alt+f11). Leggete prima di parlare per piacere!

salva214 15-10-2011 10.11.06

-.- ah si eh?....e perchè il linguaggio con cui programmi nell'VBA non è il solito del VB? ah gia hai ragione, li si programma in greco antico!!!

Non prendere per idiota la gente, perchè era OVVIO che mi riferissi al VB"A" di excel....non sentirti un prof.!

Ziko 15-10-2011 14.21.21

Citazione:

Orginalmente inviato da salva214 (Messaggio 52283)
e poi il VB lo conosco perche ci ho programmato varie volte, ma non so come collegarlo ad excel!!

Da quello che hai detto "non so come collegarlo" io ho evinto che non sapevi di cosa si stava parlando poiché il VBA non va collegato è dentro Excel. Tu apri excel scrivi il codice e lui fa quello che gli dici di fare esattamente come se tu fosse da VB. Solo che se lo fai da VB con visual studio lo devi COLLEGARE come dici tu. Se lo fai con VBA è già tutto pronto tu scrivi e lui fa. Ecco perché ti ho detto di leggere (la documentazione non il post) prima di scrivere.

Citazione:

Orginalmente inviato da salva214 (Messaggio 52289)
-.- ah si eh?....e perchè il linguaggio con cui programmi nell'VBA non è il solito del VB? ah gia hai ragione, li si programma in greco antico!!!

Non prendere per idiota la gente, perchè era OVVIO che mi riferissi al VB"A" di excel....non sentirti un prof.!

Io non ti ho preso per idiota non l'ho neanche pensato.. al massimo superficiale (te lo sei detto da solo) e poi posso sentirmi anche un prof poiché ho insegnato programmazione più di una volta!

Detto questo la mia polemica finisce e ti auguro che qualcuno ti dia il suo aiuto perché di sicuro non riceverai il mio! Ciao e buona fortuna!

Arkham00 15-10-2011 20.52.56

Per generare un documento excel da un programma, il tuo programma potrebbe richiamare Excel come oggetto ActiveX (CreateObject ...) e con il modello ad oggetti puoi creare un foglio excel e metterci quello che vuoi.
Questo però richiede che tu abbia Excel sul computer dove c'è il tuo programma (la documentazione sul modello ad oggetti la trovi facilmente sui siti MS).

In alternativa puoi generare un file xml che poi può essere letto da excel (questo metodo è utilizzato sui server web in tecnologia ASP.NET).
Al link seguente puoi trovare un esempio ed altri ne troverai su questo sito
http://www.codeproject.com/KB/applic...lientCall.aspx

Spero di esserti stato utile.


Tutti gli orari sono GMT. Adesso sono le: 12.27.11.

Basato su: vBulletin Versione 3.8.8
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.