Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Form in Xla

6 views
Skip to first unread message

Simone P.

unread,
Feb 2, 2012, 1:32:30 PM2/2/12
to
Ciao a tutti,
dovendo gestire dei file (uno per ogni dipendente) per l'inserimento
di rapportini, e avendo in un primo momento gestito la form
all'interno del file, ogni modifica che effettuo alla form devo poi
rifarla (o importare la form) in ogni file. Così ho pensato di crearmi
un file Xla con la form in modo da richiamarla sui vari file.
Il problema è che non riesco a richiamarla in nessun modo, nemmeno
passando per una macro il cui contenuto è 'nomeform.show'.

Creando semplimente un addin:
Set cformins = AddIns.Add("X:\Organizzazione\nomefile.xla",
CopyFile:=False)

come posso utilizzare la form contenuta in nomefile.xla?
Non ricordo poi, sempre in vba, se aprendola o in quale altro modo,
all'apertura dei vari file mi vedevo il progetto xla aggiunto come
eurotool ... ma poi anche lì non riuscivo a farne riferimento.

Qualcuno può aiutarmi?

Grazie
Simone

Mauro Gamberini

unread,
Feb 3, 2012, 4:32:25 AM2/3/12
to

dovendo gestire dei file (uno per ogni dipendente) per l'inserimento
di rapportini, e avendo in un primo momento gestito la form
all'interno del file, ogni modifica che effettuo alla form devo poi
rifarla (o importare la form) in ogni file. Cosě ho pensato di crearmi
un file Xla con la form in modo da richiamarla sui vari file.
Il problema č che non riesco a richiamarla in nessun modo, nemmeno
passando per una macro il cui contenuto č 'nomeform.show'.

Creando semplimente un addin:
Set cformins = AddIns.Add("X:\Organizzazione\nomefile.xla",
CopyFile:=False)

come posso utilizzare la form contenuta in nomefile.xla?
Non ricordo poi, sempre in vba, se aprendola o in quale altro modo,
all'apertura dei vari file mi vedevo il progetto xla aggiunto come
eurotool ... ma poi anche lě non riuscivo a farne riferimento.
***************************************

Nel tuo .xla una UserForm e un modulo standard.
Nel modulo standard del file .xla:

Public Sub mLanciaForm()
UserForm1.Show
End Sub

Per richiamare la UserForm da un file di Excel
al quale hai aggiunto il file .xla come componente
aggiuntivo:

Public Sub m()
Application.Run "NomeDelFile.xla!mLanciaForm"
End Sub

E sě, il file .xla lo vedi nell'editor del vb se lo hai aggiunto
(da Excel lato celle) come componente aggiuntivo; non devi
referenziarlo da vb.

--
---------------------------
Mauro Gamberini
Microsoft MVP - Excel
http://www.riolab.org/
http://www.maurogsc.eu/

Simone P.

unread,
Feb 7, 2012, 1:02:14 PM2/7/12
to
Grazie infinite!!!




On 3 Feb, 10:32, "Mauro Gamberini"
<maurogscRIMUOV...@RIMUOVEREaliceposta.it> wrote:
> dovendo gestire dei file (uno per ogni dipendente) per l'inserimento
> di rapportini, e avendo in un primo momento gestito la form
> all'interno del file, ogni modifica che effettuo alla form devo poi
> rifarla (o importare la form) in ogni file. Così ho pensato di crearmi
> un file Xla con la form in modo da richiamarla sui vari file.
> Il problema è che non riesco a richiamarla in nessun modo, nemmeno
> passando per una macro il cui contenuto è 'nomeform.show'.
>
> Creando semplimente un addin:
> Set cformins = AddIns.Add("X:\Organizzazione\nomefile.xla",
> CopyFile:=False)
>
> come posso utilizzare la form contenuta in nomefile.xla?
> Non ricordo poi, sempre in vba, se aprendola o in quale altro modo,
> all'apertura dei vari file mi vedevo il progetto xla aggiunto come
> eurotool ... ma poi anche lì non riuscivo a farne riferimento.
> ***************************************
>
> Nel tuo .xla una UserForm e un modulo standard.
> Nel modulo standard del file .xla:
>
> Public Sub mLanciaForm()
>     UserForm1.Show
> End Sub
>
> Per richiamare la UserForm da un file di Excel
> al quale hai aggiunto il file .xla come componente
> aggiuntivo:
>
> Public Sub m()
>     Application.Run "NomeDelFile.xla!mLanciaForm"
> End Sub
>
> E sì, il file .xla lo vedi nell'editor del vb se lo hai aggiunto

Simone P.

unread,
Feb 16, 2012, 1:01:35 PM2/16/12
to
Se dovessi richiamare la form con parametri (con il nome del file che
richiama la form ad esempio), ho provato così ma non va:

Application.Run "NomeDelFile.xla!mLanciaForm ("+thisworkbook.name+")"

con la macro:
Public Sub mLanciaForm (nomefile as string)
...
End Sub



On 3 Feb, 10:32, "Mauro Gamberini"
<maurogscRIMUOV...@RIMUOVEREaliceposta.it> wrote:
> dovendo gestire dei file (uno per ogni dipendente) per l'inserimento
> di rapportini, e avendo in un primo momento gestito la form
> all'interno del file, ogni modifica che effettuo alla form devo poi
> rifarla (o importare la form) in ogni file. Così ho pensato di crearmi
> un file Xla con la form in modo da richiamarla sui vari file.
> Il problema è che non riesco a richiamarla in nessun modo, nemmeno
> passando per una macro il cui contenuto è 'nomeform.show'.
>
> Creando semplimente un addin:
> Set cformins = AddIns.Add("X:\Organizzazione\nomefile.xla",
> CopyFile:=False)
>
> come posso utilizzare la form contenuta in nomefile.xla?
> Non ricordo poi, sempre in vba, se aprendola o in quale altro modo,
> all'apertura dei vari file mi vedevo il progetto xla aggiunto come
> eurotool ... ma poi anche lì non riuscivo a farne riferimento.
> ***************************************
>
> Nel tuo .xla una UserForm e un modulo standard.
> Nel modulo standard del file .xla:
>
> Public Sub mLanciaForm()
>     UserForm1.Show
> End Sub
>
> Per richiamare la UserForm da un file di Excel
> al quale hai aggiunto il file .xla come componente
> aggiuntivo:
>
> Public Sub m()
>     Application.Run "NomeDelFile.xla!mLanciaForm"
> End Sub
>
> E sì, il file .xla lo vedi nell'editor del vb se lo hai aggiunto

Mauro Gamberini

unread,
Feb 17, 2012, 2:52:19 AM2/17/12
to
"Simone P." ha scritto nel messaggio
news:095cea94-375a-410d...@e27g2000vbu.googlegroups.com...

Se dovessi richiamare la form con parametri (con il nome del file che
richiama la form ad esempio), ho provato così ma non va:

Application.Run "NomeDelFile.xla!mLanciaForm ("+thisworkbook.name+")"

con la macro:
Public Sub mLanciaForm (nomefile as string)
...
End Sub
*************************************************

La guida del vb di Excel alla voce: Metodo Run, recita:

mySum = Application.Run("MYCUSTOM.XLM!My_Func_Sum", 1, 5)

Dove, in quel caso, 1 e 5 sono i parametri(o argomenti) passati alla routine
chiamata.

Non mi sembra tu abbia utilizzato quella sintassi... ;-)

--
---------------------------
Mauro Gamberini

Simone P.

unread,
Feb 17, 2012, 6:25:23 AM2/17/12
to
Umilmente, mi scuso :)


bye

On 17 Feb, 08:52, "Mauro Gamberini"
<maurogscRIMUOV...@RIMUOVEREaliceposta.it> wrote:
> "Simone P."  ha scritto nel messaggionews:095cea94-375a-410d...@e27g2000vbu.googlegroups.com...

Mauro Gamberini

unread,
Feb 17, 2012, 7:05:27 AM2/17/12
to
"Simone P." ha scritto nel messaggio
news:c38dd4b8-48f5-4951...@f2g2000yqh.googlegroups.com...

Umilmente, mi scuso :)
****************************

LOL!


--
---------------------------
Mauro Gamberini
0 new messages