Valutazione 4.87/ 5 (100.00%) 5838 voti

Condividi:        

[excel] associare ad un nome, un immagine in automatico

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

[excel] associare ad un nome, un immagine in automatico

Postdi contiend » 14/09/11 07:12

ciao a tutti
è possibile associare delle immagini a delle celle?

Io ho 10 celle con 10 nomi diversi.
Sono sempre gli stessi nomi ma cambiano sempre di posizione dentro quel range di celle fisso.
Ad ogni cella però , a fianco, c'è un immagine. Ogni immagine è riferita ad una singola parola.

Se io cambio parola è possibile che si cambi anche l'immagine oppure no ...

Non ricordo più se era possibile... ho un vago ricordo di " NO " ma chiedo comunque.

Grazie mille
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Sponsor
 

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 14/09/11 13:26

Certo che e' possibile...
Dovresti solo spiegare se le immagini le hai come file nel tuo disco o sono gia' sul file excel, magari in un altro foglio in forma di "anagrafe" che incrocia parole e immagini".

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi contiend » 14/09/11 15:24

Le immagini, per ora, le ho sul disco... ma se devo creare un foglio parallelo posso farlo tranquillamente.
Come posso procedere?


...e grazie mille dell'aiuto
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 15/09/11 00:11

Questo significa che vorrai eseguire questa macro solo sul tuo PC, o su altro pc previa copia in una directory predefinita delle immagini.
In questo caso:
-per cominciare fai in modo che le immagini abbiano come nome la stessa parola con cui vorrai richiamarle; es con la parola "Luigi" richiamerai l' immagine "Luigi.jpg"
-poi registrati una macro mentre
--selezioni una cella
--ci carichi una immagine a piacere
--rinomini l' immagine assegnandogli il nome ZC_IndirizzoDiCella, es ZC_B2 (se l' immagine e'
stata posizionata in B2)
--selezioni un' altra cella
--selezioni l' immagine e la cancelli
-fermi la registrazione macro
In questo modo hai preparato i tasselli principali...

Quindi fatti un macro di Worksheet_Change che intercetta i changes sulla colonna in cui tu scriverai i nomi.
Nella macro inserirai:
-le istruzioni che cancellano l' immagine nella colonna adiacente (selezione immagine, cancella selezione); poiche' l' immagine se esiste si chiama ZC_IndirizzoDiCella (es ZC_B2) modificherai l' istruzione ottenuta con registra macro calcolando il nome immagine con
"ZC_" & Target.Offset(0,1).Address(0,0)
Per evitare errori nella macro, inserirai le istruzioni di cancellazione precedute da On Error Resume next e seguite da On Error goto 0
-il codice per inserire l' immagine nella cella adiacente; poiche' il nome file lo devi prendere dalla cella che e' stata scritta, modificherai quindi l' istruzione affinche' il nome file sia calcolato con
"C:\Users\NomeUtente\Pictures\" & Target.value & ".jpg" '<<Usa il TUO path
Come pure, l' immagine la devi inserire nella cella adiacente a quella scritta, per cui il range da selezionare PRIMA di inserire l' immagine sara'
Target.Offset(0,1).Select
-prima di End Sub inserisci
Target.Select

A questo punto prova a scrivere nella colonna un nome valido e vedi l' effetto che fa. E se con questi spunti non risolvi posta ancora descrivendo il layout del tuo foglio, il codice ottenuto tramite registratore di macro e il della Worksheet_Change abbozzato; per nascondere eventuali parole che non vuoi mostrare sostituiscile con XXXX lasciando inalterato tutto il resto.

Ciao, fai sapere.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi contiend » 15/09/11 07:28

Allora.. devo ammettere che dopo aver letto tutto mi sono un po' spaventato... ma insomma, proviamoci; quindi...
Anthony47 ha scritto:Questo significa che vorrai eseguire questa macro solo sul tuo PC

Giusto

Anthony47 ha scritto:-per cominciare fai in modo che le immagini abbiano come nome la stessa parola con cui vorrai richiamarle; es con la parola "Luigi" richiamerai l' immagine "Luigi.jpg"

ok

Anthony47 ha scritto:-poi registrati una macro mentre
--selezioni una cella
--ci carichi una immagine a piacere
--rinomini l' immagine assegnandogli il nome ZC_IndirizzoDiCella, es ZC_B2 (se l' immagine e'
stata posizionata in B2)
Ma il nome dell'immagine devo cambiarlo sull'hard disk o in qualche modo (che non conosco) dentro il foglio excel?

Ti chiedo anche già subito: Poi devo eliminare l'immagine appena rinominata come spieghi poi nel successivo punto oppure la prima immagine non va eliminata?
Anthony47 ha scritto:--selezioni un' altra cella
--selezioni l' immagine e la cancelli
-fermi la registrazione macro


Ti chiedo anche un'altra cosa "scandalo" :oops:
Che roba è la Worksheet Change? Cioè, come la creo?! :!: :undecided:

PS : Per farti meglio capire come poi è strutturato il foglio finale ti metto anche il file excel online con un immagine esemplificativa. Magari mi dici che non si può fare da subito come poi vorrei il risultato finale.
Ovviamente qui vedrai solo 2 immagini associate a 2 celle ma nel risultato finalone ne avrei molte di più, e da cambiare settimanalmente, per questo ho chiesto il tuo aiuto. Vediamo...
http://www.megaupload.com/?d=NUGR5H7R
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 15/09/11 15:17

Magari mi dici che non si può fare da subito come poi vorrei il risultato finale.
Purtroppo si puo' fare, ma se preferisci ti dico che non si puo'.... :D

Partiamo dalle domande da te fatte
-devi rinominare l' immagine del foglio excel, usando quella parte dell' intestazione che si chiama "Casella nome" (in genere e' a sx della barra dela formula):
--in quel momento l' immagine e' gia' selezionata, e nella Casella nome leggi il nome arbitrariamente assegnatagli da excel; leggerai qualcosa come "Immagine xyz".
Immagine

Uploaded with ImageShack.us
Cliccando sulla freccina a dx del nome potrai assegnare il nuovo nome con la convenzione che ti ho detto.
-poi devi eliminare anche la prima immagine.
Questa prima fase serve per avere il codice macro con cui excel esegue quelle operazioni.

Per avere una descrizione della Worksheet_Change guarda l' help on line del vba alla voce "Eventi dell'oggetto Worksheet". Per scriverne una:
-tasto dx sul tab col nome del foglio su cui lavori, scegli Visualizza codice: ti si aprira' l' editor delle macro. Nel frame di dx scrivi
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
Sara' aggiunta anche una line End Sub
Tra queste due righe dovrai scrivere le istruzioni di cui al post precedente, con le seguenti variazioni:
-il nome dell' immagine da cancellare va calcolata con
"ZC_" & Target.Offset(1,0).Address(0,0) '<<L' immagine e' sulla cella SOTTOSTANTE

-il range da selezionare PRIMA di inserire l' immagine deve essere
Target.Offset(1,0).Select '<<Seleziona cella sottostante

Infine, vista l' irregolarita' con cui sono posizionate le tue N celle a cui vuoi associare l' immagine:
-sul tuo foglio, creati un "intervallo" che contiene tutte (e solo) queste N celle a cui assegni il nome "pippo":
--selezioni la prima cella; premi Contr e col mouse selezioni la seconda cella; ripeti per tutte le altre N-2 celle sempre premendo Contr prima del click
--quando hai tutte le N celle selezionate, vai nella famosa "Casella nome" e usando la freccina assegni il nome "pippo"
-torna nell' editor delle macro e come prima riga (sotto la Private Sub Worksheet_Change) metti
If Application.Intersect(Target, Range("pippo")) Is Nothing Then Exit Sub

Questo servira' per abortire la macro se non hai selezionato una delle N celle contenute nell' intervallo "pippo"

Direi che hai tutto quel che serve per fare un buon lavoro...

Ciao, fai sapere.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi contiend » 16/09/11 00:17

Sono sicurissimo che ci sia tutto per fare un OTTIMO lavoro, non un buon lavoro... bisogna vedere se arrivo alla fine sano e salvo :lol: ma ci provo.

Allora, sono arrivato a scrivere la Worksheet DOPO aver fatto la macro, e mi fermo un attimo qua per capire se quello che ho scritto può essere corretto
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.Intersect(Target, Range("pippo")) Is Nothing Then Exit Sub

Range("A12:C16").Select
    On Error Resume Next
    Target.Offset(1, 0).Select '
    Selection.Name = "USQuinsancity1909_A12" & Target.Offset(1, 0).Address(0, 0) '
    On Error GoTo 0
   
    On Error Resume Next
    Target.Offset(1, 0).Select '
    Range("W12:Y16").Select
    Selection.Name = "SelezioneLongobarda_W12" & Target.Offset(1, 0).Address(0, 0) '
    On Error GoTo 0

End Sub

Se ho fatto tanti casini .... abbi pietà di me :D

In caso tutto questo sia corretto (anche se non sono troppo fiducioso),
arrivo alla lettura del punto
Anthony47 ha scritto: -sul tuo foglio, creati un "intervallo" che contiene tutte (e solo) queste N celle a cui assegni il nome "pippo":

Per "intervallo" intendi: inserire tutti i nomi (saranno poi 10 nomi per 10 immagini) a cui poi voglio che si associ un immagine ben distinta, in un elenco di celle (tipo da A1 ad A10), seleziono con CNTRL+Click e seguo le tue istruzioni
OPPURE
:?: :?: :?: :?:





.... e grazie già solo della pazienza!!! :undecided:
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 16/09/11 14:14

Per poter valutare il tuo grado di creativita' avrei bisogno del listing della macro ottenuta col registratore; se fai fatica a trovarla: da excel premi Alt-F8, seleziona il nome della macro, premi Modifica.

Per il dubbio sull' intervallo:
-Definizione d intervallo, dall' help on line di excel: "Due o più celle in un foglio. È possibile che le celle di un intervallo siano adiacenti o non adiacenti."
-Nel nostro caso sara' costituito dalle 10 celle in cui scriverai il nome delle squadre; seleziona le 10 celle (con l' ausilio del tasto Contr per selezionarle una per una), vai nella "casella Nome", premi la freccina, scrivi il "nome" con cui vuoi far riferimento a quelle 10 celle (pippo), Enter.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi contiend » 16/09/11 18:01

Anthony47 ha scritto:Per poter valutare il tuo grado di creativita' avrei bisogno del listing della macro ottenuta col registratore; se fai fatica a trovarla: da excel premi Alt-F8, seleziona il nome della macro, premi Modifica.

Per il dubbio sull' intervallo:
-Definizione d intervallo, dall' help on line di excel: "Due o più celle in un foglio. È possibile che le celle di un intervallo siano adiacenti o non adiacenti."
-Nel nostro caso sara' costituito dalle 10 celle in cui scriverai il nome delle squadre; seleziona le 10 celle (con l' ausilio del tasto Contr per selezionarle una per una), vai nella "casella Nome", premi la freccina, scrivi il "nome" con cui vuoi far riferimento a quelle 10 celle (pippo), Enter.

Ciao


Allora il listing della macro è questa
Codice: Seleziona tutto
Sub test()
'
' test Macro
'
' Scelta rapida da tastiera: CTRL+k
'
    Range("A12:C16").Select
    Selection.Name = "USQuinsancity1909_A12"
    Range("W12:Y16").Select
    Selection.Name = "SelezioneLongobarda_W12"
End Sub


E per l'intervallo, allora avevo già fatto in modo corretto. ottimo.
Vediamo il resto
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 17/09/11 00:42

Hum...
La macro registrata non contiene il codice per l' inserimento dell' immagine; diciamo che un po' le istruzioni non erano dettagliatissime e un po' le hai lette di fretta? :D
1) Quando dico " --ci carichi una immagine a piacere" intendo che devi fare Inserisci /Immagine (immagine da file), scegli una delle tue immagini sul disco, premi Inserisci.
2) le istruzioni "--selezioni un' altra cella / --selezioni l' immagine e la cancelli" non le vedo codificate, quindi devo desumere che non le hai seguite
3) l' immagine deve essere rinominata proprio come ZC_IndirizzoDiCella, es ZC_B2 (se l' immagine e' stata posizionata in B2), non VecchioNome_IndirizzoCella.

Insomma sei rimandato a settembre; e giacche' ci siamo gia' dovresti ripetere la registrazione macro seguendo alla lettera le istruzioni. E' possibile che guardando il codice della macro ti accorgerai che la macro Worksheet_Change che avevi abbozzato e' abbastanza dissimile da quanto avevo suggerito; se vuoi cimentarti nuovamente, salva le prime due righe e poi l' ultima, e riprova come da istruzioni nei messaggi precedenti.
Quanto sopra non e' (solo) per dare sfogo ai miei istinti sadici, ma (anche) per costringerti a ragionare su quanto devi comporre e darti un minimo di autonomia per quando cambiera' qualcosa nel tuo foglio di lavoro.
Vale sempre che a provarci e incaponirsi si fa bene; ma prima di arenarti scrivi dicendo dove sei arrivato, allegando il codice originale della macro registrata.

Ciao, fai sapere.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi contiend » 17/09/11 09:27

RIEPILOGO di quello che faccio:

MACRO
- Le immagini hanno come nome la stessa parola con cui saranno richiamate
- Registro una macro mentre:
>>>>>> Seleziono una cella
>>>>>> Carichi una immagine (Selezione Cella, Inserisci immagine, Seleziono immagine sul disco, Click su Inserisci)
>>>>>> Rinomino l' immagine assegnandogli il nome ZC_IndirizzoDiCella (se l' immagine e' stata posizionata in B2) dalla "Casella Nome" in alto a sinistra.
>>>>>> Elimino l'immagine
- Fermi la macro

WORKSHEE_CHANGE
- Tasto DX sul tab, Visualizza codice.
- Inserisco
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)

- Sara' aggiunta anche una line
Codice: Seleziona tutto
End Sub

- Tra queste dure righe inserisco:
- Per evitare errori nella macro
Codice: Seleziona tutto
On Error Resume next

- Inserisco le istruzioni
Codice: Seleziona tutto
"ZC_A12" & Target.Offset(1,0).Address(0,0) '

che cancellano l' immagine nella colonna adiacente
- Per evitare errori nella macro
Codice: Seleziona tutto
On Error goto 0




Tra le cose per me dubbiose:
Anthony47 ha scritto:- l range da selezionare PRIMA di inserire l' immagine deve essere
Codice: Seleziona tutto
Target.Offset(1,0).Select '

..... che intendi?

Anthony47 ha scritto:- il codice per inserire l' immagine nella cella adiacente; poiche' il nome file lo devi prendere dalla cella che e' stata scritta, modificherai quindi l' istruzione affinche' il nome file sia calcolato con
Codice: Seleziona tutto
"C:\Users\cnt\Pictures\" & Target.value & "SelezioneLongobarda.jpg" '

.... che intendi? Ma soprattutto, se provo a farlo mi scrive in rosso la riga qui sopra, e mi evidenzia di giallo la scritta Private Sub Worksheet_SelectionChange(ByVal Target As Range); inoltre non ho ben capito in che posizione della Worksheet_Change dovrei inserire questo comando.


- Infine effettuo l'intervallo delle celle rinominandole in "pippo" ed inserisco sotto la Private Sub Worksheet_Change
Codice: Seleziona tutto
If Application.Intersect(Target, Range("pippo")) Is Nothing Then Exit Sub



Poi tu mi dici che non vedi codificate le istruzioni selezione, cancella
Anthony47 ha scritto:2) le istruzioni "--selezioni un' altra cella / --selezioni l' immagine e la cancelli" non le vedo codificate, quindi devo desumere che non le hai seguite

ma io le effettuo! L'inserimento immagine come da "protocollo" e la cancellazione, selezionando l'immagine e cliccando su backspace (mi pare si chiami cos' la freccia che punta verso sinistra di solito sopra INVIO). Non posso premere CANC perché sul mio MacBookPro con Paralles 7 non ho il tasto CANC..... comunque l'immagine si cancella!
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 17/09/11 18:06

Direi che l' esperimento didattico non sta' riuscendo...
Premetto che non uso Excel for Mac, ne' so se il vba per windows funge anche sul Mac; da quello che scrivi e' evidente un comportamento quanto meno "diverso" tra le due versioni: su Windows l' inserimento di una picture sul foglio viene registrata nella macro, sul Mac no.

Io volevo farti arrivare a una Sub Worksheet_Change di questo tipo:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.Intersect(Target, Range("pippo")) Is Nothing Then Exit Sub
On Error Resume Next
    ActiveSheet.Shapes("ZC_" & Target.Offset(0, 1).Address(0, 0)).Delete
On Error GoTo 0

Target.Offset(1, 0).Select
ActiveSheet.Pictures.Insert("C:\Users\NomeUtente\Pictures\" & Target.Value & _
".jpg").Select
Selection.Name = "ZC_" & Target.Offset(0, 1).Address(0, 0)
Target.Select
End Sub

Nell' istruzione ActiveSheet.Pictures.Insert il percorso+nome dell' immagine e' relativo alla situazione di test che ho creato sul mio pc windows; dovrai adattare il "percorso" al tuo mac; la registrazione avrebbe dovuto darci il formato dell' istruzione. L' intervallo "pippo" sai come generarlo, se non l' hai gia' fatto.

Dal foglio di lavoro, tasto dx sul tab col nome del foglio su cui lavori, scegli Visualizza codice per aprire l' editor delle macro nella posizione giusta; cancella la Worksheet_Change eventualmente presente; copia il codice, incollalo nel frame di dx, modifica il "percorso" come detto appena prima.
Torna su Excel e cancella tutte le immagini presenti; infine scrivi il nome di una squadra e vedi l' effetto che fa.

Tutte le istruzioni sono riferite all' ambiente Windows, non so quanto siano aderenti all' ambiente Mac.

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi contiend » 19/09/11 09:23

E' probabile che alcune istruzioni non vengano registrate per via di Windows installato su Parallels Dekstop su Mac Book.

Se io inserisco le 10 immagini che mi servono in un intervallo di celle nel foglio che poi m'interessa, potrei far richiamare quelle immagini associandole a dei nomi.

In pratica mi servirebbe sempre la stessa cosa, ma invece di prendere le immagini dai file sul desktop (che crea problemi), farle richiamare dall'interno del foglio excel?
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 19/09/11 10:00

Ma hai potuto provare la macro che ti ho dato sul tuo pc?
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi contiend » 19/09/11 11:10

Si l'ho provata ma non riesco a farla funzionare, penso sia proprio colpa dell'indirizzo su mac che incasina tutto.

Se provo da dentro Paralles Desktop su Windows mi viene
\\psf\Home\Desktop\

Se provo da MAC a prendere l'indirizzo ho
/Users/contiend/Desktop

Ma in entrambi i casi il risultato è negativo... purtroppo! Non immaginavo potesse essere un problema, dato che per tutto il resto excel si è comportato esattamente come quando avevo il PC Desktop... :cry:
Windows 10
OFFICE 2010
Avatar utente
contiend
Utente Senior
 
Post: 145
Iscritto il: 20/04/09 17:45

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 19/09/11 13:18

Allora metti le tue immagini in un foglio che chiami ad esempio FoglioZZ; usando la Casella Nome, ad ogni immagine dai il nome della squadra (es non "Immagine xyz" ma "NomeSquadra", lo stesso valore che scrivi nelle celle).
Poi cambia la Worksheet_Change che abbiamo provato con questa:
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.Intersect(Target, Range("pippo")) Is Nothing Then Exit Sub
On Error Resume Next
    ActiveSheet.Shapes("ZC_" & Target.Offset(0, 1).Address(0, 0)).Delete
On Error GoTo 0

Target.Offset(1, 0).Select
Sheets("FoglioZZ").Shapes(Target.value).Copy
Selection.Name = "ZC_" & Target.Offset(0, 1).Address(0, 0)
Target.Select
End Sub

Ciao
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi enricom » 07/01/12 15:05

Ciao Anthony, ho cercato anch'io di seguire le tue istruzioni per creare un file excel che mi permetta di digitare il nome di un'immagine (presente sul PC) per vederla comparire nel foglio di lavoro, premetto che non conosco VBA, mi sto cimentando da pochi giorni appunto per fare questo lavoro. Ti riporto il codice:
Private Sub Worksheet_Change(ByVal Target As Range)
If Application.Intersect(Target, Range("pippo")) Is Nothing Then Exit Sub
On Error Resume Next
ActiveSheet.Shapes("ZC_" & Target.Offset(0, 1).Address(0, 0)).Delete
On Error GoTo 0

Target.Offset(1, 0).Select
ActiveSheet.Pictures.Insert("C:\Utenti\Aldina\Immagini\" & Target.Value & _
".jpg").Select
Selection.Name = "ZC_" & Target.Offset(0, 1).Address(0, 0)
Target.Select
End Sub

Quando provo a digitare il nome di una immagine in una delle celle mi dice "Errore di run-time '1004':
Impossibile trovare la proprietà Insert per la classe Pictures.
Mi evidenzia:
ActiveSheet.Pictures.Insert("C:\Utenti\Aldina\Immagini\" & Target.Value & _
".jpg").Select

Puoi aiutarmi per arrivare ad una soluzione?
enricom
Utente Junior
 
Post: 13
Iscritto il: 07/01/12 14:52

Re: [excel] associare ad un nome, un immagine in automatico

Postdi Anthony47 » 07/01/12 18:24

Ciao enricom, benvenuto nel forum.

Secondo me la directory "C:\Utenti\Aldina\Immagini\" non esiste nel tuo pc; prova con
"C:\Users\Aldina\Pictures\"

Fai sapere, ciao.
Anthony
Win7 + Office 2010 Ita; Win 7 + Office 2013 Ita
Xp + Office 2003 Ita
E voi cosa usate? (per istruzioni vedere viewtopic.php?f=26&t=97449)
Avatar utente
Anthony47
Moderatore
 
Post: 13895
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: [excel] associare ad un nome, un immagine in automatico

Postdi ricky53 » 08/01/12 02:52

Ciao,
se utilizzi "W7" come "SO" allora i percorso corretto è quello che ti ha indicato Anthony
"C:\Users\Aldina\Pictures"
anche e con "Esplora Risorse" vedi
"C:\Utenti\Aldina\Immagini"

Puoi verificarlo in questo modo:
1. Apri "Esplora Risorse" e seleziona la cartella "Immagini" all'interno di Utenti, Aldina
2. Tasto destro
3. Proprietà
4. Click sul tab "Percorso"
e ....
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W7; Office 2003-10-13-16
Avatar utente
ricky53
Utente Senior
 
Post: 4223
Iscritto il: 11/04/09 19:29
Località: Italia

Re: [excel] associare ad un nome, un immagine in automatico

Postdi enricom » 08/01/12 14:54

Grazie ragazzi adesso va...........
Però nelle celle comprese nel range "pippo", quando vado a digitare il nome del file me li va ad incollare tutti nello stesso punto, quindi li vedo tutti sovrapposti.
Poi volevo sapere avendo queste immagini dimensioni diverse, si può fare in modo che abbiano tutti le stesse dimensioni?
Vi incollo il codice nel caso fosse utile.
Ciao e grazie ancora

Private Sub Worksheet_Change(ByVal Target As Range)
If Application.Intersect(Target, Range("pippo")) Is Nothing Then Exit Sub
On Error Resume Next
ActiveSheet.Shapes("ZC_" & Target.Offset(0, 1).Address(0, 0)).Delete
On Error GoTo 0

Target.Offset(1, 0).Select
ActiveSheet.Pictures.Insert("C:\Users\Aldina\Pictures\" & Target.Value & _
".jpg").Select
Selection.Name = "ZC_" & Target.Offset(0, 1).Address(0, 0)
Target.Select
End Sub
enricom
Utente Junior
 
Post: 13
Iscritto il: 07/01/12 14:52

Prossimo

Torna a Applicazioni Office Windows


Topic correlati a "[excel] associare ad un nome, un immagine in automatico":


Chi c’è in linea

Visitano il forum: Nessuno e 22 ospiti