Pagina precedente | 1 | Pagina successiva
Vota | Stampa | Notifica email    
Autore

Aggiornamento automatico dei collegamenti ipetestuali

Ultimo Aggiornamento: 02/02/2013 11:37
Post: 19
Registrato il: 06/05/2006
Utente Junior
OFFLINE
26/01/2013 18:13

Ciao a tutti,
avrei bisogno di un grande aiuto.
Sto elaborando un foglio che chiamo MARZO 2013 e sul quale ho creato diversi collegamenti ipertestuali e alcune formule. Da quel foglio ne voglio creare un altro simile e per questo procedo con la creazione di una copia di MARZIO 2013 che chiamerò APRILE 2013. Nel creare APRILE 2013 le formule presenti in MARZO 2013 si sono automaticamente aggiornate mentre lo stesso non è successo con i collegamenti ipertestuali (fanno ancora tutti riferimento al foglio di origine: Marzo 2013).
Qualcuno mi sa dire se esiste un modo rapido per aggiornare automaticamente il nome del nuovo collegamento cambiando il nome di Marzo 2013 con Aprile 2013? [SM=x423017]
Post: 968
Registrato il: 24/09/2008
Città: LATINA
Età: 69
Utente Senior
2007-2010
OFFLINE
26/01/2013 18:35

Ciao percuoco,dunque vai in basso a sx nel nome fogli clicca con il tasto destro del mouse sul foglio da duplicare si apre una tendina vai su "sposta o copia" spunta "crea una copia" e dai Ok si crea nuovo foglio con (...2) che poi rinomini.
Dovrebbe funzionare.
Ricordati di inserire la tua versione Excel che usi vedi le istruzioni nel secondo post del forum "Versione Excel"
Un saluto



Un saluto
Berna11
-----------
Excel-2007-2010
Post: 19
Registrato il: 06/05/2006
Utente Junior
OFFLINE
27/01/2013 10:09

ciao Berna11.
grazie per la risposta, ma purtroppo non funziona.
forse non ero stato chiaro nel porre il problema. quando "copio" il foglio "Marzo 2013" creando "Marzo 2013 (2)" (che poi rinominerò Aprile 2013" le formule si aggiornano mentre i collegamenti si riferisco al foglio di origine "Marzo 2013".
come posso risolvere?
[la versione che uso è excel 2010]
grazie per l'attenzione
Post: 307
Registrato il: 04/10/2011
Città: RAVENNA
Età: 50
Utente Senior
excel 2007
OFFLINE
27/01/2013 15:35

Re:
percuoco, 27/01/2013 10:09:

ciao Berna11.
grazie per la risposta, ma purtroppo non funziona.
forse non ero stato chiaro nel porre il problema. quando "copio" il foglio "Marzo 2013" creando "Marzo 2013 (2)" (che poi rinominerò Aprile 2013" le formule si aggiornano mentre i collegamenti si riferisco al foglio di origine "Marzo 2013".
come posso risolvere?
[la versione che uso è excel 2010]
grazie per l'attenzione




puoi allegare il tuo file?
Luigi Bix

Casa: Windows Vista - Excel 2007 (ver. 12.0.06665.5003) SP3
Ufficio: Windows Xp - Excel 2007 (ver. 12.0.06665.5003) SP3
Post: 20
Registrato il: 06/05/2006
Utente Junior
OFFLINE
27/01/2013 20:17

eccolo. tieni conto che dal foglio Marzo.. ne ho copiato uno che ho chiamato Aprile.. sul quale ho cambiato manualmente tutti i collegamenti. poi ne ho creato un altro che ho denominato Maggio.. (e così dovrò fare fino all'ultimo mese dell'anno, da qui l'esigenza di cambiare automaticamente i collegamenti di ogni nuovo foglio) sul quale sono presenti i collegamenti riferiti al foglio dal quale l'ho copiato: Aprile...
grazie per l'aiuto
Post: 311
Registrato il: 04/10/2011
Città: RAVENNA
Età: 50
Utente Senior
excel 2007
OFFLINE
28/01/2013 13:23

Re:
percuoco, 27/01/2013 20:17:

eccolo. tieni conto che dal foglio Marzo.. ne ho copiato uno che ho chiamato Aprile.. sul quale ho cambiato manualmente tutti i collegamenti. poi ne ho creato un altro che ho denominato Maggio.. (e così dovrò fare fino all'ultimo mese dell'anno, da qui l'esigenza di cambiare automaticamente i collegamenti di ogni nuovo foglio) sul quale sono presenti i collegamenti riferiti al foglio dal quale l'ho copiato: Aprile...
grazie per l'aiuto




Ciao.
Dunque, mi serve capire se:
ti interessa una macro che in automatico generi i collegamenti ipertestuali.
OPPURE

una macro che, oltre all'hyperlink generi anche la pagina nuova.

Nel primo caso, la macro è fatta.
Nel secondo caso c'è un po' da lavorare, perchè, trattandosi di mesi dell'anno, non si può semplicemente clonare un mese e moltiplicarlo per dodici, ma va adattata mese per mese.

Fammi sapere

Un saluto

Luigi Bix

Casa: Windows Vista - Excel 2007 (ver. 12.0.06665.5003) SP3
Ufficio: Windows Xp - Excel 2007 (ver. 12.0.06665.5003) SP3
Post: 21
Registrato il: 06/05/2006
Utente Junior
OFFLINE
28/01/2013 14:12

è giusto quel che dici, nel secondo caso (adattamento al calendario relativo ai singoli mesi) il lavoro è più complesso.

mi va bene anche la soluzione relativa al "solo" aggiornamento automatico dei collegamenti ipertestuali che, come hai visto, sono tanti e mi portano via un sacco di tempo.
aspetto la soluzione e grazie per l'aiuto, davvero prezioso! [SM=x423053]
Post: 312
Registrato il: 04/10/2011
Città: RAVENNA
Età: 50
Utente Senior
excel 2007
OFFLINE
29/01/2013 00:25

Re:
percuoco, 28/01/2013 14:12:

è giusto quel che dici, nel secondo caso (adattamento al calendario relativo ai singoli mesi) il lavoro è più complesso.

mi va bene anche la soluzione relativa al "solo" aggiornamento automatico dei collegamenti ipertestuali che, come hai visto, sono tanti e mi portano via un sacco di tempo.
aspetto la soluzione e grazie per l'aiuto, davvero prezioso! [SM=x423053]




Ciao.
Dunque, la macro è fatto e dovrebbe asnche fare quello che chiedi.
Però va settata sui fogli diefinitivi.
Quindi, se tu ti sai muovere nel vba te la posto e tu la adatti,
altrimenti allega qui la versione completa del progetto (tutti i mesi mancanti) e la adatto io.
Fammi sapere.

Un saluto

Luigi Bix

Casa: Windows Vista - Excel 2007 (ver. 12.0.06665.5003) SP3
Ufficio: Windows Xp - Excel 2007 (ver. 12.0.06665.5003) SP3
Post: 22
Registrato il: 06/05/2006
Utente Junior
OFFLINE
29/01/2013 08:30

no, il vba non fa per me.
vada per la seconda ipotesi: completo i fogli con i calendari mensili aggiornati e ti mando il file. passerà certamente qualche giorno, posso utilizzare la tua mail quando avrò terminato l'aggiornamento?
Post: 314
Registrato il: 04/10/2011
Città: RAVENNA
Età: 50
Utente Senior
excel 2007
OFFLINE
29/01/2013 09:40

Re:
percuoco, 29/01/2013 08:30:

no, il vba non fa per me.
vada per la seconda ipotesi: completo i fogli con i calendari mensili aggiornati e ti mando il file. passerà certamente qualche giorno, posso utilizzare la tua mail quando avrò terminato l'aggiornamento?




Ciao.
Di norma le discussioni e gli scambi di files devono avvenire nell'ambito della discussione avviata.
Pertanto, come primo tentativo ti direi di allegare qui.
Se il file fosse troppo vouminoso allora vada per l'email.


Luigi Bix

Casa: Windows Vista - Excel 2007 (ver. 12.0.06665.5003) SP3
Ufficio: Windows Xp - Excel 2007 (ver. 12.0.06665.5003) SP3
Post: 23
Registrato il: 06/05/2006
Utente Junior
OFFLINE
29/01/2013 16:27

certo, non ho nessuna intenzione di aggirare le regole del forum alle quali scrupolosamente mi atterrò.
la mia "paura" è che se passa un po' di tempo (e un po' me ne occorrerà per mettere giù il calendario completo dell'intero anno) magari perdi di vista questa discussione e con essa io perdo la possibilità di fruire del tuo prezioso aiuto.
quindi, quello che proponevo (ma forse non sono stato abbastanza chiaro nel farlo) era semplicemente avvisarti che avevo pubblicato nel forum il file aggiornato sul quale poi avresti potuto agire.
mi sono reso conto poi che ho scritto una stupidaggine (ma hai notato che sono classificato "junior" nel forum), perchè se pubblico qualcosa in risposta ad altro utente in automatico ti arriva la notifica via mail.
grazie ancora per il supporto e abbi un po' di pazienza, piano piano cresceremo...
Post: 318
Registrato il: 04/10/2011
Città: RAVENNA
Età: 50
Utente Senior
excel 2007
OFFLINE
29/01/2013 16:28

Re:
percuoco, 29/01/2013 16:27:

certo, non ho nessuna intenzione di aggirare le regole del forum alle quali scrupolosamente mi atterrò.
la mia "paura" è che se passa un po' di tempo (e un po' me ne occorrerà per mettere giù il calendario completo dell'intero anno) magari perdi di vista questa discussione e con essa io perdo la possibilità di fruire del tuo prezioso aiuto.
quindi, quello che proponevo (ma forse non sono stato abbastanza chiaro nel farlo) era semplicemente avvisarti che avevo pubblicato nel forum il file aggiornato sul quale poi avresti potuto agire.
mi sono reso conto poi che ho scritto una stupidaggine (ma hai notato che sono classificato "junior" nel forum), perchè se pubblico qualcosa in risposta ad altro utente in automatico ti arriva la notifica via mail.
grazie ancora per il supporto e abbi un po' di pazienza, piano piano cresceremo...




Vai tranquillo.. Prenditi tutto il tempo che ti serve..e tieni conto che pure io sono stato un utente junior sino alla scorsa settimana.. [SM=x423024]
Tutto quello che ho imparato..l'ho appreso qui [SM=x423018]
[Modificato da luigibix 29/01/2013 16:29]
Luigi Bix

Casa: Windows Vista - Excel 2007 (ver. 12.0.06665.5003) SP3
Ufficio: Windows Xp - Excel 2007 (ver. 12.0.06665.5003) SP3
Post: 24
Registrato il: 06/05/2006
Utente Junior
OFFLINE
30/01/2013 14:56

ecco fatto.
al file ho aggiunto i fogli relativi a tutti i mesi dell'anno 2013.
fino al mese di giugno sono aggiornate sia le formule che i collegamenti, il tuo intervento, per quel che attiene i collegamenti ipertestuali, sarebbe necessario a partire dal foglio denominato LUGLIO 2013 in poi.
grazie un milione di volte!!

P.S.

ho provato a caricare il file a questa risposta, ma mi è stato impedito perchè di dimensioni troppo grandi. considerato che mi avevi dato il consenso di usare la tua mail in casi come questo, procedo.
Post: 25
Registrato il: 06/05/2006
Utente Junior
OFFLINE
01/02/2013 08:50

ti scusi? e di cosa? sei stato davvero cortese a dedicarmi tutto questo tempo.

veniamo al lavoro.

così come l'hai impostato va benissimo. solo 2 cose:
è vero che con il doppio click mi posizione nella parte di calendario che mi occorre (giorno e servizio), ma avrei preferito che la cella su cui punta il tuo comando fosse alla destra del calendario in modo da avere la completa visibilità delle colonne;

dovresti impegnarti e spiegare ad un rookie come me il procedimento che hai messo in atto. altrimenti non imparo mai e resto junior per una vita [SM=x423059]
Post: 351
Registrato il: 04/10/2011
Città: RAVENNA
Età: 50
Utente Senior
excel 2007
OFFLINE
01/02/2013 11:09

Re:
percuoco, 01/02/2013 08:50:

ti scusi? e di cosa? sei stato davvero cortese a dedicarmi tutto questo tempo.

veniamo al lavoro.

così come l'hai impostato va benissimo. solo 2 cose:
è vero che con il doppio click mi posizione nella parte di calendario che mi occorre (giorno e servizio), ma avrei preferito che la cella su cui punta il tuo comando fosse alla destra del calendario in modo da avere la completa visibilità delle colonne;

dovresti impegnarti e spiegare ad un rookie come me il procedimento che hai messo in atto. altrimenti non imparo mai e resto junior per una vita [SM=x423059]




Ciao Vittorio.
Se mi dici il range di colonne e di righe che vuoi che venga visualizzato, faccio in modo che questo accada.
Purtroppo senza questa indicazione non posso fare niente, perchè come ben sai la risoluzione dello schermo, oltre che la sua forma, modificano la visualizzazione del file.
Ad esempio, nel mio schermo, vedo perfettamente tutte le colonne della zona giorno-servizio per un totale di 20 righe e 7 colonne.

[Modificato da luigibix 01/02/2013 11:11]
Luigi Bix

Casa: Windows Vista - Excel 2007 (ver. 12.0.06665.5003) SP3
Ufficio: Windows Xp - Excel 2007 (ver. 12.0.06665.5003) SP3
Post: 26
Registrato il: 06/05/2006
Utente Junior
OFFLINE
02/02/2013 10:20

ciao luigibix.

allora:

per il range da visualizzare ti faccio l'esempio della prima data di marzo. se faccio doppio click su 4/3/13 la "zona" del foglio che mi serve da vedere sullo schermo è T116:AG123 e così via per le altre date.

un'altra cosa. il doppio click non funziona su tutti i fogli. ad esempio, sul calendario di marzo se faccio il doppio click sulle date si apre la formula di conteggio, ma non trasferisce la visualizzazione sulla relativa zona del calendario. ho pensato che questo problema fosse dovuto al fatto che le macro non fossero attivate, ma anche dopo aver provveduto non accade niente.

puoi darmi delle indicazioni per come procedere?
Post: 360
Registrato il: 04/10/2011
Città: RAVENNA
Età: 50
Utente Senior
excel 2007
OFFLINE
02/02/2013 11:37

Re:
percuoco, 02/02/2013 10:20:

ciao luigibix.

allora:

per il range da visualizzare ti faccio l'esempio della prima data di marzo. se faccio doppio click su 4/3/13 la "zona" del foglio che mi serve da vedere sullo schermo è T116:AG123 e così via per le altre date.

un'altra cosa. il doppio click non funziona su tutti i fogli. ad esempio, sul calendario di marzo se faccio il doppio click sulle date si apre la formula di conteggio, ma non trasferisce la visualizzazione sulla relativa zona del calendario. ho pensato che questo problema fosse dovuto al fatto che le macro non fossero attivate, ma anche dopo aver provveduto non accade niente.

puoi darmi delle indicazioni per come procedere?



Ciao Vittorio.

ho controllato il mese di marzo ed effettivamente era sballati i range di destinazione perchè marzo inizia con il giorno 4 e finisce con il giorno 28. Quindi la macro andava "settata" con valori ad hoc per quel mese.

Io ho corretto l'errore, però, dato che mi hai chiesto come funziona la macro, riporto a seguire la spiegazione dei vari passaggi, così ti cimenti tu e provi ad aggiustare la cosa.
Naturalmente, qualora non riuscissi, ti darò una mano.


Dunque, noterai che la macro ripete periodicamente le stesse istruzioni, questo perchè il tuo foglio è fondamentalmente suddiviso in 5 macrozone dettate dal tipo di attività da adempiere (gp, tp, tfr, ecc...).

Lo schema fisso delle istruzioni ha questa spiegazione:

Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Intersect(ActiveCell, Range("j4:j102")) Is Nothing Then 'se la cella su cui clicchi non si trova nel range j4:j102 allora
Exit Sub 'esci dalla macro
Else ' invece
If Not Intersect(ActiveCell, Range("j4:j56")) Is Nothing Then 'se la cella su cui clcchi si trova nel range j4:j121
For Each CELLA In Range("x116:x256") ' per ogni cella contenuta nel range x116:x247
If CELLA.Value = ActiveCell Then ' se la cella lì contenuta ha lo stesso valore della cella che clicchi allora
CELLA.Select 'selezionala
Application.Goto Reference:=CELLA, scroll:=True 'visualizza la cella in posizione A1
End If 'chiudi la condizione "SE"
Next 'ripeti il ciclo di ricerca per il range specificato (j4:j21)



Ho volutamente alterato alcuni range, giusto per permetterti di sperimentare.


Per quanto riguarda le altre due macro, altro non sono che delle utility che ho creato per, rispettivamente, cancellare i collegamenti ipertestuali che c'erano prima (nel range j4:ad 890, ossia tutti quelli che avevi creato tu nel foglio), e ricostituirli, corretti, nel range che mi interessava, ossia ac116:ad890.
Ora (e spiego questo per anticipare un problema che si è posto con il tuo ultimo quesito), di norma è bene non unire le celle e le colonne, perchè mettono in crisi excel.
Infatti, nel nostro caso, io ho dovuto selezionare il range ac116:ad890 nonostante, apparentemente, la cella che contiene il valore (torna all'elenco..ecc) sia in AC, perchè le colonne ac:ad sono unite, e quindi excel si confonde ed ha bisogno di soluzioni ad hoc.
cmq, per spiegare la macro:

Sub dfsdfsd()
For Each CELLA In Range("J4:AD890") ' per ogni cella nel range j4:ad890
Hyperlinks.Delete ' cancella tutti i collegamenti ipertestuali
Next


For Each cella2 In ActiveSheet.Range("ac116:aD890") ' in ogni cella contenuta nel range ac116:ad890

Set MYC = Cells(1, 1) 'setta come destinazione del collegamento la cella A1
If cella2.Value = "TORNA AL CALENDARIO DELLE DISPONIBILITA'" Then 'se la cella nel range indicato ha il testo "Torna al calendario delle disponibilità allora...
ActiveSheet.Hyperlinks.Add Anchor:=cella2, Address:="", SubAddress:=MYC.Address 'aggungi il collegamento ipertestuale alla cella con il valore richiesto
'il collegamento punterà alla stessa pagina (address:=""), con destinazione (Subaddress) settata ad hoc (MYC"
End If 'esci dalla condizione SE

Next 'ripeti le istruzioni per ogni cella incontrata nel range indicato (ac116:ad890)
End Sub

Per tornare al problema delle celle unite, la struttura del tuo foglio rende imprecisa la visualizzazione da te richiesta.
Quindi, per ora, non riesco a trovare un modo per visualzzare il range T:AD relativo al giorno selezionato.
Come ti dicevo, inoltre, nel mio monitor io vedo ben oltre il range (per l primo marzo, ad esempio) t116:ad123.
Magari, invece, dimmi tu qual'è il range che visualizzi, così al limite cerco di lavorare sullo zoom della pagina piuttosto che sugli offset.
(gli offset sono delle istruzioni che puntano a dx, sx, su o giu' rispetto alla cella specificata).
Esempio: cells(1,1).offset(3,1).select
significa:
rileva la cella nella prima riga e nella prima colonna (A1), e seleziona la cella alla terza riga sottostante ed una colonna a destra (B4).


Fammi sapere

Un saluto

[Modificato da luigibix 02/02/2013 11:42]
Luigi Bix

Casa: Windows Vista - Excel 2007 (ver. 12.0.06665.5003) SP3
Ufficio: Windows Xp - Excel 2007 (ver. 12.0.06665.5003) SP3
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 00:49. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com