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

ruotare immagine con vba

429 views
Skip to first unread message

--Sandro--

unread,
Jan 4, 2012, 2:51:40 AM1/4/12
to
Volendo fare ruotare una immagine in un foglio excel in base al valore
di una cella come si fa?
Ovvero all'evento variazione valore cella dovrebbe aggiornarsi la
rotazione della immagine.
Non riesco ad accedere alle prorieta e metodi dell'immagine.
Grazie mille in ogni caso.

eliano

unread,
Jan 4, 2012, 11:35:30 AM1/4/12
to
Prova qualcosa di simile; scusa, ma non posso provarlo:

Public Sub prova()
Dim myShape As Shape
Set myShape = ActiveSheet.Shapes("Picture 1")
myShape.IncrementRotation ActiveSheet.Range("A1")
MsgBox "Oh, mi sembra un po' storto!"
myShape.Rotation = 0
MsgBox "Ecco,ora si; e' tornato normale!"
End Sub

Cambia i riferimenti con i tuoi e facci sapere, grazie.
Eliano

bene63

unread,
Jan 4, 2012, 1:16:53 PM1/4/12
to
=====================================================================
Ciao Sandro, se vuoi provare anche questo codice:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim a As Integer, Wrd6 As Shape
If Sheets("Foglio1").Range("A1") > 1 Then 'se A1 è
maggiore di 1 l'immagine ruota
ActiveSheet.Shapes("Picture 3").Top = Range("F2").Top
Set Wrd6 = ActiveSheet.Shapes("Picture 3")
For a = 1 To 72
Wrd6.IncrementRotation 15
DoEvents
Next a
End If
End Sub

eliano

unread,
Jan 4, 2012, 3:16:58 PM1/4/12
to
> End Sub- Nascondi testo citato
>
> - Mostra testo citato -

Visto che l'hai indirizzata a me:
Ottima anche per il test su A1, ma ferma quella trottola.:-))
(Cioe', secondo la richiesta dell'OP, metti quel 15 in una cella)
Ciao Benedetto,
Eliano

--Sandro--

unread,
Jan 5, 2012, 3:21:59 AM1/5/12
to
Vi ringrazio entrambi, ora elaboro il tutto:)

Ho notato che con office 2003 registrando una macro ed inserendo una
immagine, ruotandola e compiendo delle operazioni su di essa, viene
registrato il relativo codice delle operazioni eseguite sulla immagine.
Con office 2007 cio' non avviene. Se si registra una macro e si inserisce
una immagine, la si ruota, poi nel codice vb non si trova niente
relativamente alla immagine. Occorre settare qualche cosa per fare in modo
che office 2007 si comporti come il 2003?

Ciao

Sandro

eliano

unread,
Jan 5, 2012, 12:32:34 PM1/5/12
to
Non lo so Sandro.
Un modo: dichiararsi pentiti, buttare il 2007, chiedere il programma
di protezione nr. 2003.:-))
E se neppure con questa sollecitazione entra Fratello Mauro, allora
"lasciate ogni speranza o voi che il 2007 usate".:-))
Peccato, volevo che mi augurasse un Buon Onomastico ma sara' per
un'altra volta.:-D)
A parte le battute, abbi fede; qualcuno si fara' vivo in merito.
Eliano

bene63

unread,
Jan 6, 2012, 6:19:25 AM1/6/12
to
===================================================================================
>Ho notato che con office 2003 registrando una macro ed inserendo una
> immagine, ruotandola e compiendo delle operazioni su di essa, viene
> registrato il relativo codice delle operazioni eseguite sulla immagine.
> Con office 2007 cio' non avviene. Se si registra una macro e si inserisce
> una immagine, la si ruota, poi nel codice vb non si trova niente
> relativamente alla immagine. Occorre settare qualche cosa per fare in modo
> che office 2007 si comporti come il 2003?


Ciao Sandro, “mettiti il cuore in pace”.
Anch’io ho fatto le stesse prove che hai fatto tu con Excel 2007,
niente, non registra nulla, eccetto il nome della macro. Ho fatto le
medesime prove con Excel 2003 ed Excel 2010, ed entrambe registrano le
macro, quindi il problema nasce solo in Office 2007, e non credo
occorra settare qualcosa ..., bensì sostituirlo con altro Office.
Un saluto anche ad Eliano (ciao) !

Benedetto

eliano

unread,
Jan 6, 2012, 11:55:50 AM1/6/12
to
On 6 Gen, 12:19, bene63 <manuela.piccin...@alice.it> wrote:
> On 5 Gen, 18:32, eliano <falinieli...@virgilio.it> wrote:
>
>
>
>
>
> > On 5 Gen, 09:21, "--Sandro--" <apig...@toglimiinterfree.it> wrote:
>
> > > Vi ringrazio entrambi, ora elaboro il tutto:)
>
> > > Ho notato che con office 2003 registrando una macro ed inserendo una
> > > immagine, ruotandola e compiendo delle operazioni su di essa, viene
> > > registrato il relativo codice delle operazioni eseguite sulla immagine.
> > > Con office 2007 cio' non avviene. Se si registra una macro e si inserisce
> > > una immagine, la si ruota, poi nel codice vb non si trova niente
> > > relativamente alla immagine. Occorre settare qualche cosa per fare in modo
> > > che office 2007 si comporti come il 2003?
>
> > > Ciao
>
> > > Sandro
>
> > Non lo so Sandro.
> > Un modo: dichiararsi pentiti, buttare il 2007, chiedere il programma
> > di protezione nr. 2003.:-))
> > E se neppure con questa sollecitazione entra Fratello Mauro, allora
> > "lasciate ogni speranza o voi che il 2007 usate".:-))
> > Peccato, volevo che mi augurasse un Buon Onomastico ma sara' per
> > un'altra volta.:-D)
> > A parte le battute, abbi fede; qualcuno si fara' vivo in merito.
> > Eliano
>
> ===========================================================================­========
>
> >Ho notato che con office 2003 registrando una macro ed inserendo una
> > immagine, ruotandola e compiendo delle operazioni su di essa, viene
> > registrato il relativo codice delle operazioni eseguite sulla immagine.
> > Con office 2007 cio' non avviene. Se si registra una macro e si inserisce
> > una immagine, la si ruota, poi nel codice vb non si trova niente
> > relativamente alla immagine. Occorre settare qualche cosa per fare in modo
> > che office 2007 si comporti come il 2003?
>
> Ciao Sandro, “mettiti il cuore in pace”.
> Anch’io ho fatto le stesse prove che hai fatto tu con Excel 2007,
> niente, non registra nulla, eccetto il nome della macro. Ho fatto le
> medesime prove con Excel 2003 ed Excel 2010, ed entrambe registrano le
> macro, quindi il problema nasce solo in Office 2007, e non credo
> occorra settare qualcosa ..., bensì sostituirlo con altro Office.
> Un saluto anche ad Eliano (ciao) !
>
> Benedetto- Nascondi testo citato
>
> - Mostra testo citato -

Quindi con il 2010 dici che funziona ?
Mah, quel 2010 sembra proprio una bestiaccia; spesso si comporta come
le bracioline:"AVVOLTE FUNGE, AVVOLTE NO".
Grazie dell'informazione e saluti
Eliano

bene63

unread,
Jan 6, 2012, 12:37:52 PM1/6/12
to
> Eliano- Nascondi testo citato
>
> - Mostra testo citato -

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

Quindi con il 2010 dici che funziona ?
Mah, quel 2010 sembra proprio una bestiaccia; spesso si comporta come
le bracioline:"AVVOLTE FUNGE, AVVOLTE NO".
Grazie dell'informazione e saluti
Eliano


Ciao Eliano, funziona nel senso che comunque la macro in Excel 2010
durante le operazioni “manuali” di rotazione di un qualsiasi oggetto,
qualcosa scrive, però da qui a scrivere (non l’ho scritto io) il
codice VBA di cui sopra, ce ne vuole, anche perché la macro la
costruisce la macchina, mentre per scrivere codice VB bisogna
conoscere un po’ tale linguaggio, giusto?

Benedetto

eliano

unread,
Jan 6, 2012, 3:23:01 PM1/6/12
to
Ni, Benedetto.
Con il registratore di macro (del 2003) si ottiene sempre una macro
"di massima", cioe' funzionante ma statica, limitata a quelle
operazioni manuali che abbiamo scritto, macro che dobbiamo adattare al
progetto che stiamo trattando; quindi da modificare "in dinamica".
Quindi hai ragione quando dici che occorrere conosce " UN PO' " il Vba
e, opinione personale, non avere mai la presunzione di conoscerlo a
fondo, pena la certezza di dare delle informazioni sbagliate.
Cioe' se partiamo dal presupposto che abbiamo TUTTI necessita' di
imparare qualcosa e agiamo in piena umilta', corriamo il rischio di
scrivere macro tendenzialmente funzionanti, facilmente comprensibili e
modificabili, quindi utili a tutti.
Ciao,
Eliano

bene63

unread,
Jan 6, 2012, 3:54:56 PM1/6/12
to
Sono pienamente d’accordo con te Eliano (ad esempio: io di VBA da 1 a
10, ne conosco forse 1).
Ciao, a risentirci!

Benedetto

eliano

unread,
Jan 6, 2012, 3:59:13 PM1/6/12
to
LOL Benedetto; piu' si va avanti e mi sembra di essere arrivato a
0,9.-
Comunque insistiamo, vedi mai.:-))
Eliano
0 new messages