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

COLLEGAMENTO AUTOMATICO DA CELLA IN CONDIVISIONE

Ultimo Aggiornamento: 14/10/2017 11:16
Post: 1
Registrato il: 11/10/2017
Città: MILANO
Età: 46
Utente Junior
2013
OFFLINE
11/10/2017 12:30

Buongiorno a tutti.

Sono Lorenzo e sono freschissimo del Forum…
La mia conoscenza di Excel è molto limitata ed autodidatta.
Il tutto inizia che un file che utilizzo come elenco per le pratiche che un mio conoscente ha sviluppato ma che ora non può aiutarmi.
Vi chiedo la gentilezza di farlo Voi….
Il file si compone di due Fogli. Scheda ed Archivio.
Il Foglio scheda è composto di una sola riga nel quale inserisco dei dati che poi, schiacciando un pulsante e grazie ad una specifica macro, vengono inseriti nel Foglio Archivio. Con lastessa macro viene anche creata una cartella (non nel senso di excel) all’interno del mio server locale all’indirizzo \\Ls420dbb7\studio\ARCHIVIOPRATICHE\ dentro la quale inserisco manualmente dei file. La Cartella creata prende il nome delle prime tre celle della riga. Grazie all'aiuto di altro Forum sono riuscito nel mio iniziale intento di creare in automatico, mediante estensione della macro, un collegamento su una delle celle del Foglio Archivio alla cartella creata sul server in modo che cliccandoci sopra mi si apra la cartella
Nel seguito la macro completa:

Sub CreaCartella()
Dim Cartella As String
Dim FileSystemObj
Set FileSystemObj = CreateObject("Scripting.FileSystemObject")
Cartella = "\\Ls420dbb7\studio\ARCHIVIO PRATICHE\" & Range("Scheda!C7") & " " & Range("Scheda!D7") & " " & Range("Scheda!E7")
If Not FileSystemObj.folderExists(Cartella) Then
FileSystemObj.CreateFolder Cartella
MsgBox "Attenzione: E' stata creata la nuova Cartella " & Range("F1") & " nella Directory \\Ls420dbb7\studio\ARCHIVIO PRATICHE", vbInformation, "Avviso"
Else
MsgBox "Attenzione: La Cartella " & Range("F1") & " esiste già!", vbInformation, "Avviso"
End If
'----------- MODIFICHE ALE/FLO --140916--------------------
' posiziona nella cella da inserire collegamento
Sheets("Archivio").Select
ultimariga = Cells(Rows.Count, "C").End(xlUp).Row
Cells(ultimariga, "B").Select
'Range("B1").Select
'Do
'ActiveCell.Offset(1).Select
'Loop Until ActiveCell.Value = ""
'ActiveCell.Offset(-1).Select
' collegamento
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="\\Ls420dbb7\studio\ARCHIVIO PRATICHE\" & Range("Scheda!C7") & " " & Range("Scheda!D7") & " " & Range("Scheda!E7")

'----------- MODIFICHE LORENZO --101017--------------------
' posiziona nella cella da inserire collegamentoSheets("Archivio").Select 'seleziona il foglio
Range("B2").Select 'seleziona la cella B2
Do Until ActiveCell = "" 'inizia il ciclo che continua fino a (UNTIL) la cella attiva e' vuota
'aggiunge il collegamento ipertestuale con l'uso di Activecell e Offset che indica lo scarto rispetto la cella attiva
'funzione OFFSET=il primo valore indica su (valore negativo) e giu' (valore positivo), il secondo destra (valore negativo) e sinistra (valore positivo)
ActiveSheet.Hyperlinks.Add _
Anchor:=Selection, _
Address:="\\Ls420dbb7\studio\ARCHIVIO PRATICHE\" & ActiveCell.Offset(, -1) & " " & ActiveCell & " " & ActiveCell.Offset(, 1)
ActiveCell.Offset(1).Select 'seleziona la cella successiva in basso
Loop 'prosegue il ciclo
End Sub


La macro funziona ossia crea la cartella ed il collegamento MA SOLO SE CI LAVORO IO !!!!!
Se lo condivido con Condividi cartella in Revisioni (cosa per me indispensabile) mi crea solo la cartella ma non il collegamento, dandomi il seguente errore:

Errore di run-time 1004
Errore definito dall'applicazione o dall'oggetto

qualcuno di voi può aiutarmi ?

Vi allego anche i file con un solo record date le dimensioni e privo dei dati sensibili

Grazie mille

Lorenzo


[Modificato da LORENZO-ExcelForum 11/10/2017 13:17]
Post: 5.267
Registrato il: 14/11/2004
Utente Master
Office 2019
OFFLINE
12/10/2017 16:39

Collegamento condivisione
Ciao Lorenzo ho eliminato il file in quanto anche se nei due fogli "Scheda-Archivio" non ci sono dati sensibili, nel foglio "Media" riporta tutti i clienti che hai inserito, nel caso rimettilo senza il foglio "Media".

il fatto che in condivisione non ti funzioni, potrebbe essere che non riconosca l'utente ogni PC ha un suo User.

ma mi sembra strano in quanto se stai all'esterno dello studio dovrebbe anche dartelo.

hai provato a fare la condivisione della pratica manualmente per vedere come si comporta?

oppure ci sia qualche opzione per i collegamenti ipertestuali da attivare.

Ciao By Sal [SM=x423051]

[Modificato da by sal 12/10/2017 16:40]
se ti piace la soluzione sostienici con una DONAZIONE a piacere. Grazie clicca qui
Post: 776
Registrato il: 24/04/2004
Città: TERAMO
Età: 63
Utente Senior
2010
OFFLINE
13/10/2017 03:17

Ciao.
Tanto per...
Tu e i tuoi colleghi lavorate con le medesime versioni di Office?
E, sempre tanto per provare, nell'istruzione
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:="\\Ls420dbb7\studio\ARCHIVIO PRATICHE\" & Range("Scheda!C7") & " " & Range("Scheda!D7") & " " & Range("Scheda!E7")
prova ad usare una variabile per assegnare il valore ad Address, es.
Dim Indirizzo as String
....
Indirizzo = "\\Ls420dbb7\studio\ARCHIVIO PRATICHE\" & Range("Scheda!C7") & " " & Range("Scheda!D7") & " " & Range("Scheda!E7")
ActiveSheet.Hyperlinks.Add Anchor:=Selection, Address:=Indirizzo
Dovresti eliminare i select ed utilizzare delle variabili Range al loro posto.
Qualifica esplicitamente i range a cui ti riferisci; a volte un'espressione del tipo
Range("xyz")

(che implica che il range in questione sia nel foglio attivo) non punta dove ti aspetteresti, meglio usare sempre una forma del tipo
Sheets("ABC").Range("XYZ")

Poi, in generale, è consigliabile evitare l'utilizzo di Select, ActiveSheet, Selection e simili.
L'uso di questi oggetti è diffuso a causa del tipo di codice prodotto automaticamente dal registratore di macro, ma rendono il codice stesso estremamente inaffidabile.

__________________________
[Excel 2010]
-Condividere la conoscenza aumenta la ricchezza di tutti.
-Dai ad un uomo un pesce e lo avrai sfamato per un giorno; insegnagli a pescare e lo avrai sfamato per sempre. (Confucio)
-Il sonno della ragione genera mostri. (Francisco Goya)
Post: 1
Registrato il: 11/10/2017
Città: MILANO
Età: 46
Utente Junior
2013
OFFLINE
13/10/2017 11:52

COLLEGAMENTO AUTOMATICO DA CELLA IN CONDIVISIONE
Ragazzi,

Vi rignrazio per il Vostro intervento. Purtroppo non sono così esperto da capire le differenze da voi indicate.  

Tuttavia posso dirvi che sicuramente non è una questione di PC e versioni di Office in quanto l'errore me lo da a me stesso dopo aver condiviso la cartella. In pratica senza condivisione mi crea il collegamento, con la condivisione mi crea la cartella ma mi da errore come sopra e non crea il collegamento.

Ricarico il file senz dati sensibili e vi ringrazio.

Aiuto.....  
Post: 777
Registrato il: 24/04/2004
Città: TERAMO
Età: 63
Utente Senior
2010
OFFLINE
14/10/2017 11:16

Ciao Lorenzo.
Non posso testare il file in una rete, quindi non posso aiutare più di tanto.

Solo un piccolo suggerimento che non ha nulla a che vedere col tuo problema:
nella sub chiuditutto() utilizzi l'istruzione Application.Quit, il cui uso è sconsigliato, particolarmente in un file destinato alla condivisione (o ad un forum).
Vedi: Application.Quit
[Modificato da Zer0kelvin 14/10/2017 11:17]
__________________________
[Excel 2010]
-Condividere la conoscenza aumenta la ricchezza di tutti.
-Dai ad un uomo un pesce e lo avrai sfamato per un giorno; insegnagli a pescare e lo avrai sfamato per sempre. (Confucio)
-Il sonno della ragione genera mostri. (Francisco Goya)
Vota:
Amministra Discussione: | Chiudi | Sposta | Cancella | Modifica | Notifica email Pagina precedente | 1 | Pagina successiva
Nuova Discussione
 | 
Rispondi
Cerca nel forum
Tag discussione
Discussioni Simili   [vedi tutte]
aiuto...inserire collegamento a cella su più file... (10 messaggi, agg.: 31/03/2017 18:23)
Feed | Forum | Bacheca | Album | Utenti | Cerca | Login | Registrati | Amministra
Tutti gli orari sono GMT+01:00. Adesso sono le 03:06. Versione: Stampabile | Mobile | Regolamento | Privacy
FreeForumZone [v.6.1] - Copyright © 2000-2024 FFZ srl - www.freeforumzone.com