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

Proprietà Picture in VBA

398 views
Skip to first unread message

Motore

unread,
May 22, 2008, 10:59:05 AM5/22/08
to

In unfoglio di Excel ho memorizzato un' immagina,
ora come posso fare in VBA di EXcel a sapere
le proprietą dell'immaginee intesa come:

Picture Numero, Altezza, Larghezza dell'immagine
attraverso VBA di Excel ?
Grazie


Maurizio Borrelli

unread,
May 22, 2008, 11:17:55 AM5/22/08
to
"Motore" wrote in message
news:48358a3e$0$29597$4faf...@reader1.news.tin.it:

> In unfoglio di Excel ho memorizzato un' immagina,
> ora come posso fare in VBA di EXcel a sapere

> le proprietà dell'immaginee intesa come:


> Picture Numero, Altezza, Larghezza dell'immagine
> attraverso VBA di Excel ?

Ciao Motore.

Un esempio:

Public Sub ShowShpPrps_test()
ShowShpPrps [Foglio1].Shapes.Item("Pippo")
End Sub

Private Sub ShowShpPrps(ByVal shp As Excel.Shape)
Dim sh As Object
Dim shps As Excel.Shapes

With shp
Set shps = .Parent
Set sh = shps.Parent
Debug.Print ".Name:", "'" & .Name & "'"
Debug.Print ".Left:", .Left
Debug.Print ".Top:", .Top
Debug.Print ".Width:", .Width
Debug.Print ".Height:", .Height
End With
Debug.Print "Owner:", "'" & sh.Name & "'"
Debug.Print

Set shps = Nothing
Set sh = Nothing
End Sub

(Facci sapere se e eventualmente come hai risolto. Grazie!)

--
Maurizio Borrelli [Microsoft MVP Office System]
http://www.riolab.org/

Maurizio Borrelli

unread,
May 22, 2008, 11:31:14 AM5/22/08
to
"Motore" wrote in message
news:48358a3e$0$29597$4faf...@reader1.news.tin.it:

> In unfoglio di Excel ho memorizzato un' immagina,


> ora come posso fare in VBA di EXcel a sapere

> le proprietà dell'immaginee intesa come:


> Picture Numero, Altezza, Larghezza dell'immagine
> attraverso VBA di Excel ?

Ciao Motore.

Cosa intendi con "Numero"?

Motore

unread,
May 22, 2008, 11:57:39 AM5/22/08
to

Quando in un foglio di excel salvo una immagine lei viene
memorizzata con
IMMAGINE 1 oppure dipende IMMAGINE 2 o IMMAGINE
3
è questo il numero che inìtendo.

Ora in funzione di che IMMAGINE 1 ho memorizzato
quanda vado a richiamarla in VBA :
Set myPic = Sheets("SETUPLOGO").Pictures("Picture 1")

chiaramente se ho memorizzato IMAMGINE 2 e faccio:

Set myPic = Sheets("SETUPLOGO").Pictures("Picture 1")
mi da errore.
Grazie


"Maurizio Borrelli" <maurizio...@freepass.it> ha scritto nel messaggio
news:%23Tfl2DC...@TK2MSFTNGP03.phx.gbl...

Mauro Gamberini

unread,
May 22, 2008, 11:57:19 AM5/22/08
to
> Cosa intendi con "Numero"?
>

"Picture 1"
"Picture 2"
ecc.... immagino... 8-)

--
---------------------------
Mauro Gamberini
http://www.riolab.org/


Maurizio Borrelli

unread,
May 22, 2008, 12:02:38 PM5/22/08
to
"Mauro Gamberini" wrote in message
news:u2KzFSCv...@TK2MSFTNGP02.phx.gbl:

> > Cosa intendi con "Numero"?
> "Picture 1"
> "Picture 2"
> ecc.... immagino... 8-)

Non mi piace immaginare, in queste cose. Non e` compito mio.

;-)

Ciao Mauro, beato chi ti rilegge!

Mauro Gamberini

unread,
May 22, 2008, 12:07:17 PM5/22/08
to
> Quando in un foglio di excel salvo una immagine lei viene
> memorizzata con
> IMMAGINE 1 oppure dipende IMMAGINE 2 o
> IMMAGINE 3
> č questo il numero che inětendo.
>

Dai un tuo nome alle immagini.

Public Sub m()
With Worksheets("Foglio1")
.Pictures("Picture 1").Name = "tuoNome"
End With
End Sub

Adesso non sarŕ piů Picture 1, ma tuoNome.
Ovviamente tuoNome puoi sostituirlo con
una stringa di tuo piacimento.

Mauro Gamberini

unread,
May 22, 2008, 12:08:44 PM5/22/08
to
> Ciao Mauro, beato chi ti rilegge!
>

Lavoro e studio.
Alla mia età mi ritrovo *studente lavoratore*.
Ma ROTFL!

Maurizio Borrelli

unread,
May 22, 2008, 12:12:20 PM5/22/08
to
"Motore" wrote in message
news:4835983e$0$29602$4faf...@reader1.news.tin.it:
> "Maurizio Borrelli" ha scritto nel messaggio
> news:%23Tfl2DC...@TK2MSFTNGP03.phx.gbl...

Ciao Motore.

[...]


> >> In unfoglio di Excel ho memorizzato un' immagina,
> >> ora come posso fare in VBA di EXcel a sapere
> >> le proprietà dell'immaginee intesa come:
> >> Picture Numero, Altezza, Larghezza dell'immagine
> >> attraverso VBA di Excel ?

> > Cosa intendi con "Numero"?

> Quando in un foglio di excel salvo una immagine lei viene
> memorizzata con
> IMMAGINE 1 oppure dipende IMMAGINE 2 o IMMAGINE
> 3
> è questo il numero che inìtendo.

Ok.

> Ora in funzione di che IMMAGINE 1 ho memorizzato
> quanda vado a richiamarla in VBA :
> Set myPic = Sheets("SETUPLOGO").Pictures("Picture 1")
> chiaramente se ho memorizzato IMAMGINE 2 e faccio:
> Set myPic = Sheets("SETUPLOGO").Pictures("Picture 1")
> mi da errore.

Giusto. Pero' non bisognerebbe affidarsi ai nomi assegnati da Excel ma
gestire un proprio sistema di denominazione. Se all'immagine il nome lo
dai tu allora tu SAI che nome le hai dato e non ti sbagli.

Hai visto e sperimentato gli altri esempi che ho postato in risposta ai
tuoi quesiti?

Norman Jones

unread,
May 22, 2008, 12:23:43 PM5/22/08
to
Ciao Motore,

=============

=============

Non credo che sia efficiente, o cortese,
aprire un nuovo thread per un oggetto
trattato dettagiamente nel tuo thread
"Salvare picture in Variabile". Devo quindi
concludere che non abbia fiducia nella
mia abilita' di aiutarti ulteriormente, per cui
cedo nuova partecipazione in questi thread.

---
Regards.
Norman

Mauro Gamberini

unread,
May 22, 2008, 12:30:48 PM5/22/08
to
> Hai visto e sperimentato gli altri esempi che ho postato in risposta ai
> tuoi quesiti?
>

La tua fede nel prossimo è meritevole... 8-)

--
---------------------------
Mauro Gamberini(c'è una faccina, no flame, grazie...)
http://www.riolab.org/


Motore

unread,
May 22, 2008, 1:25:21 PM5/22/08
to
Scusa , ma non volevo minimamente mettere in dubbio
o ancora diminuire la tua abilità nell'aiutarmi la quale
sottelineo che è stata ed è molto efficace ed efficente,
ho aperto un nuovo thread solo perchè ero ansioso di riuscire
a risolvere il problema e per questo mi scuso.
Grazie


"Norman Jones" <norma...@wherforartthou.com> ha scritto nel messaggio
news:%23f096gC...@TK2MSFTNGP02.phx.gbl...


> Ciao Motore,
>
> =============
> In unfoglio di Excel ho memorizzato un' immagina,
> ora come posso fare in VBA di EXcel a sapere

> le proprietà dell'immaginee intesa come:

Mauro Gamberini

unread,
May 22, 2008, 2:19:23 PM5/22/08
to
> ho aperto un nuovo thread solo perchè ero ansioso di riuscire
> a risolvere il problema e per questo mi scuso.
>

E quindi?
Hai risolto?
Hai capito che puoi rinominare le tue immagini
com nomi *significativi* e poi utilizzare
quelli?

Norman Jones

unread,
May 22, 2008, 3:14:20 PM5/22/08
to
Ciao Mauro,

=============


E quindi?
Hai risolto?
Hai capito che puoi rinominare le tue immagini
com nomi *significativi* e poi utilizzare
quelli?

=============

Se ho capito la esigenza di Motore,
noncredo sis necesssario rinomiare
le immagine; basterebbe utilizzare le
sue proprieta' Index.

Comunque, credo che se io abbia
capito, o meno, sia tuttora soltanto
di interesse academico.

---
Regards.
Norman

eliano

unread,
May 22, 2008, 4:08:00 PM5/22/08
to

"Motore" ha scritto:

Ciao Motore, con un cordialissimo saluto a tutti i partecipanti.
Ti consiglio calma, gesso e meno ansia, dal momento che hai ricevuto
indicazioni ridondanti rispetto alla tua richiesta.
Ti aggiungo altri due link che uniti alla esortazione più volte ripetuta sul
NG di SPERIMENTARE, SPERIMENTARE, SPERIMENTARE ed USARE LA GUIDA IN LINEA
dovrebbero portarti a risolvere qualsiasi problema dovesse presentarti.
http://ennius.altervista.org/free/ifvba124.htm e
http://ennius.altervista.org/vba/vba55.php
Cordialmente
Eliano

Motore

unread,
May 23, 2008, 1:38:26 AM5/23/08
to
Ti ringrazio per i consigli e per i link
anche se purtroppo non ho ancora risolto
il problema.
Grazie.
Ciao.

"eliano" <eli...@discussions.microsoft.com> ha scritto nel messaggio
news:D37F2B59-86EC-45D5...@microsoft.com...

Mauro Gamberini

unread,
May 23, 2008, 12:14:14 PM5/23/08
to
> Ti ringrazio per i consigli e per i link
> anche se purtroppo non ho ancora risolto
> il problema.
>

Non hai detto(o io non ho capito)
*come* importi le immagini.
Da Inserisci-->Immagine?
Excel crea nel foglio dove importi
l'immagine una *lista* di immagini
e la nomina: Picture 1, Picture 2, ecc.
(o Immagine 1, Immagine 2 ecc.),
indipendentemente dal nome che ha l'immagine
in origine.
Tu puoi riferirti all'immagine con *quel* nome o
con la sua posizione nella *lista*.
Ma(ma) puoi rinominare le tue immagini e quindi
gestirle sicuramente meglio.
Prova a pensare se invece di riferirti a Picture 1
(o come ti sta proponendo Norman alla sua
posizione nella *lista*)potessi fare riferimento
a FotoDiPippoAl Mare, FotoDiPluto,
PanoramaCortina, ecc.

Maurizio e io stiamo cercando di farti capire ciò.
Quindi selezionare(riposizionare, ingrandire, ecc.)
la tua immagine sarà molto, molto,
molto più semplice:

tuoFoglio.Pictures("PanoramaCortina").Select

senza pensare quale posizione ha la stessa nella *lista*
o a quale nome gli è stato assegnato da Excel.

Puoi rinominare le tue immagini una volta che le hai
importate, puoi creare qualcosa per farlo *mentre* importi,
mantenendo il nome originale del file o modificandolo.

Valuta l'importanza che hanno le immagini in quello che stai facendo
e se ti interessa una delle due soluzioni proposte qui sopra,
dai qualche indicazione in più su quello che vorresti fare
e vedrai che qualcuno ti da una mano.

0 new messages