Condividi:        

Cerca e salva con nome

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

Cerca e salva con nome

Postdi Gagi » 11/12/15 12:58

Ciao a tutti, dovrei eseguire la seguente operazione.
In un foglio Excel ho una lista utenti, tramite una form popolo questa lista a cui per ogni utente vorrei caricare la sua rispettiva foto. Per poter scegliere la foto dell'utente utilizzo il codice che leggete sotto abbinato ad un pulsante:

Codice: Seleziona tutto
Private Sub CommandButton12_Click()
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFilePicker)
Dim FileSelezionato As Variant
With fd
If .Show = -1 Then
For Each FileSelezionato In .SelectedItems
Dim iRow, icol As Integer
iRow = 2
icol = 1
While Cells(iRow, icol).Value <> ""
iRow = iRow + 1
Wend
TextBox15 = FileSelezionato
Next FileSelezionato
Else
End If
End With
Set fd = Nothing
End Sub

Eseguo la ricerca del file, trovato il file mi riporta la stringa del link nella casella di testo TextBox11.
Non interessandomi di salvare il link, vorrei invece salvare il file selezionato in una specfica cartella con l'istruzione "ThisWorkbook.Path", per memorizzarla in una sottocartella dalla path da cui sto lavorando, atribuendogli il nome prelevandola dalla casella di testo "idtext" che mi viene popolata tramite un'altra istruzione.
Il codice funziona molto bene, ma mi areno quando cerco di sfruttare la variabile "FileSelezionato".
Nell'attesa di ricevere aiuto dalla comunity vi ringrazio tuttim, aticimpandovi i miei agurui di Buone Feste.
Gagi
Utente Junior
 
Post: 19
Iscritto il: 03/06/04 09:36
Località: Svizzera

Sponsor
 

Re: Cerca e salva con nome

Postdi Anthony47 » 12/12/15 02:48

Immagino che usi il codice che hai pubblicato per inserire il nome completo (path piu' nome file) di una delle immagini selezionate tramite FileDialog all'interno di TextBox15, mentre non ho capito a che serve il loop While Cells(iRow, icol).Value <> "" /Wend.
Poi vuoi "memorizzare" il file all'interno di altra cartella definita nel textbox "idtext".

Per capire meglio avrei bisogno di capire se intendi "spostare il file selezionato" dalla sua posizione alla nuova (come penso), o "copiarlo" (cosa che non suggerirei); inoltre vorrei sapere se la cartella caricata in "idtext" dobbiamo assumere che sia gia' presente (come spero) o se invece potrebbe anche essere mancante (e in questo caso cosa fare).

Ti aspettiamo con questi chiarimenti, sia per modificare il codice pubblicato che per completarlo per la parte mancante.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: Cerca e salva con nome

Postdi Pablo4s » 14/12/15 23:32

Scusate l'intromissione.....credo di avere un quesito analogo..
Dato un foglio excel, con una colonna che contiene "n" nomi file, e dato che per ciascuno di questi file esiste un omonimo PDF, esiste una macro che mi permetta di selezionare i suddetti PDF (contenuti in una cartella e/o relative sottocartelle) e di spostarli tutti in una medesima cartella? dire GRAZIE è dire poco!!!! :lol:
Pablo4s
Newbie
 
Post: 2
Iscritto il: 14/12/15 23:24

Re: Cerca e salva con nome

Postdi Flash30005 » 15/12/15 05:37

Ciao Pablo4s e benvenuto nel Forum

le macro normalmente si fanno appositamente per una esigenza specifica (almeno in questo Forum)
e una macro realizzata per una esigenza non va bene per un'altra esigenza quindi non esiste una macro che faccia quello che richiedi ma la si può creare se aggiungi ulteriori dettagli o, meglio, se pubblichi la struttura dei dati specificando percorso di destinazione
oppure potrei indicarti un paio di righe codice macro che poi adatterai alle tue esigenze.

Fai sapere
ciao

P.s. penso che questo tuo post sarà spostato in un nuovo topic perché non proprio calzante con l'esigenza dell'autore del topic.
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: Cerca e salva con nome

Postdi Pablo4s » 15/12/15 09:16

Ciao Flash!
grazie per la risposta.....io x il momento rispondo qui!
Scendo nei dettagli....
Tramite foglio excel, Io genero una distinta di disegni, ciascuno con proprio nome (codice).
Questi disegni sono tutti salvati in formato PDF e sono residenti nella cartella C:\pippo\disegni\.., ed eventualmente in sue sottocartelle.
La mia necessità sarebbe quella di "leggere" dalla colonna excel in cui si trova l'elenco dei disegni TUTTI I NOMI ESISTENTI, andarli a pescare nella cartella dichiarata e raggrupparli tutti in una cartella da me definita precedentemente, che di solito viene creata ad hoc...
Traduco (scusa ma sono neofita in materia): 1-leggi dalla colonna (es. B) i nomi dei file 2-valli a tagliare dalla loro posizione 3-incollali dove ti dico io....
Spero di essere stato chiaro!! :) grazie fin da ora
Pablo4s
Newbie
 
Post: 2
Iscritto il: 14/12/15 23:24

Re: Cerca e salva con nome

Postdi Anthony47 » 17/12/15 01:01

Riciclo interamente quanto appena detto a davide73 in altra discussione!

Supponiamo che in A1 ci sia il percorso dove si trovano i file attualmente, con lo "slash" (\) finale; in B2 metti il percosro dove vuoi posizionare le immagini.
Da A2 verso il basso ci sono gli attuali nomi file (compreso di estensione); accanto, in B2 verso il basso, ci sono i nuovi nomi file (compreso di estensione).
Prova allora con questa macro:
Codice: Seleziona tutto
Sub rinoma()
Dim myIPath As String, myOPath As String, I As Long
'
myIPath = Range("A1")
myOPath = Range("B1")
For I = 2 To Cells(Rows.Count, 1).End(xlUp).Row
    If Dir(myIPath & Cells(I, "A").Value) = Cells(I, "A").Value Then
        Name myIPath & Cells(I, "A").Value As myOPath & Cells(I, "B").Value
    End If
Next I
End Sub
Da excel: premi Alt-F11 per aprire l' editor delle macro; Menu /Inserisci /Modulo; copia il codice e incollalo nel frame di dx
Compila A1 e B1 e gli elenchi in colonna A e B e lancia poi la Sub Rinoma: dal foglio contenente i dati, premi Alt-F8; seleziona Rinoma dall'elenco macro disponibili, premi Esegui.

La directory di Output deve gia' esistere.


Ciao, fai sapere...
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea


Torna a Applicazioni Office Windows


Topic correlati a "Cerca e salva con nome":


Chi c’è in linea

Visitano il forum: Nessuno e 49 ospiti