Risolto Modificare "lettera" unità Hard Disk, dentro formula cerca verticale?

corfurio

Utente abituale
8 Luglio 2016
350
18
30
brescia
2010
1
Buonasera a tutti, ho un problemino con la mia formula, che allo stato attuale funziona, ma più avanti potrebbe darmi problemi.
Cerco di essere sintetico, il foglio in oggetto (che avrà sempre, una istanza separata, dal foglio principale), ho un pulsante, che quando viene cliccato mi aggiorna dei dati.
Un semplice cerca verticale:
Visual Basic:
    Range("D2").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(RC[-2],'F:\UFFICIO\MAGS\[MAGS.xlsm]MAG'!R3C1:R3000C9,5,FALSE)"
    Selection.AutoFill Destination:=Range("D2:D67"), Type:=xlFillDefault
    Range("D2").Select
Bene, il mio percorso è sempre fisso, ma la lettera (unità del mio hard disk, ogni tanto cambia, e quindi ho cercato in tutti i modi, di poter inserire "dentro" la porzione della formula, la possibilità di poter modificare manualmente l' unità, quando questa cambia di lettera, adesso è "F", se diventa "B", per esempio.. non va più niente.
Qui la mia idea, ovviamente non va ;)
Visual Basic:
HHD = F
   Range("D2").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(RC[-2],'HHD:\UFFICIO\MAGS\[MAGS.xlsm]MAG'!R3C1:R3000C9,5,FALSE)"
    Selection.AutoFill Destination:=Range("D2:D67"), Type:=xlFillDefault
    Range("D2").Select
Ce per caso un modo per ottenere quello che sto cercando? Grazie a tutti!!!
Non allego file, perchè il mio unico problema è poter inserire a mia facoltà, la nomenclatura dell' unità dell' hard disk.
 

ges

Excel/VBA Expert
Amministratore
Expert
21 Giugno 2015
22.845
1.865
Como
2011MAC 2016WIN
519
Ciao,
prova a vedere che percorso leggi mettendo così:
Visual Basic:
Sub ProvaPercorso ()
percorso = Environ("USERPROFILE")
MsgBox percorso
End Sub
 

corfurio

Utente abituale
8 Luglio 2016
350
18
30
brescia
2010
1
Ciao ges @ges , si l' ho fatto ed esce questo: C:/Users/MYPROFILE
Powerwin @Powerwin , mi dispiace, ho visto che erano stati inseriti nel codice tutti i codice del colore, infatti li ho tolti subito, io non li vedo più infatti, ma ci sono ancora?
 

Powerwin

VBA Expert
Expert
17 Marzo 2016
4.585
115
vicino a Milano
2019
100
grazie, no, sono spariti adesso, prova così
Visual Basic:
HHD = F
   Range("D2").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(RC[-2],'" & HHD & ":\UFFICIO\MAGS\[MAGS.xlsm]MAG'!R3C1:R3000C9,5,FALSE)"
    Selection.AutoFill Destination:=Range("D2:D67"), Type:=xlFillDefault
    Range("D2").Select
p.s. sto facendo un tentativo, non avendo una situazione simile alla tua...quindi scusami se dovesse presentare errori
 

corfurio

Utente abituale
8 Luglio 2016
350
18
30
brescia
2010
1
Grazie Powerwin @Powerwin , ho provato la modifica, e non escono errori, però non mostrava tutto #nd, allora ho controllato il risultato ed ho notato che dentro la formula nelle celle, era del tutto sparito il riferimento all' unità dell' hard disk.
Ho provato ed effettuare una prova, inserendo nella dichiarzione l' apice, e miracolosamente era giusto ;)
qui la modifica, funzionante.

Visual Basic:
Dim HHD
HHD = "'F"

    Range("D2").Select
    ActiveCell.FormulaR1C1 = _
        "=VLOOKUP(RC[-2]," & HHD & ":\UFFICIO\MAGS\[MAGS.xlsm]MAG'!R3C1:R3000C9,5,FALSE)"
    Selection.AutoFill Destination:=Range("D2:D67"), Type:=xlFillDefault
    Range("D2").Select
Pongo un altro quesito, sperando di non violare il regolamento, ma essendo sempre collegato alla formula credo sia possibile.
In sostanza, la formula viene applicata al range delle celle correttamente, però mi altera tutta la formattazione del colori che io ho applicato nelle celle, cè modo, per eludere questo riformattamento delle celle? Grazie
 

ges

Excel/VBA Expert
Amministratore
Expert
21 Giugno 2015
22.845
1.865
Como
2011MAC 2016WIN
519
Giusto per provare, potresti provare anche queste macro?
Visual Basic:
Sub ProvaPercorso1 ()
 MsgBox Environ("HomeDrive")
End Sub
Visual Basic:
Sub ProvaPercorso2 ()
 MsgBox Environ("WinDir")
End Sub
 

corfurio

Utente abituale
8 Luglio 2016
350
18
30
brescia
2010
1
ciao ges @ges !

ProvaPercorso1 mi ritorna;
C:
ProvaPercorso2 invece;
C:/Windows

Visto che ci siamo, è tutto il giorno che ci sbatto la testa, per qualche motivo, il codice che avevo dato per corretto, funziona, ma male.. non mi aggiorna i dati sempre, ti assicuro che ho guardavo 1000 volte, e cercato di capire, la formula che appare sul file è corretta, ma "quando" mi trova la corrispondenza (perchè a volte non la trova anche se il codice esiste) non si aggiorna quando modifico il valore. non ho la più pallida idea del motivo..
Grazie, buona serata!

EDIT: non so se può essere di aiuto, ho visto che se chiudo il file (quello in cui cerca i dati) e poi lo riapro mi aggiorna correttamente i dati. ma solo la prima volta, poi mai piu. a meno che non richiudo il file.
 
Ultima modifica:

Sostieni ForumExcel

Aiutaci a sostenere le spese e a mantenere online la community attraverso una libera donazione!