Previous page | 1 | Next page

Copiare righe da un file ad un altro in base a contenuto celle

Last Update: 8/5/2021 12:18 PM
Author
Print | Email Notification    
Post: 1
Registered in: 7/29/2021
Age: 21
Junior User
2016
OFFLINE
7/29/2021 11:42 AM
 
Modify
 
Delete
 
Quote

Salve, avrei bisogno di un aiuto per ricreare un file dal nulla.
Devo impostare senza dati una serie di file excel, il primo file di riepilogo dal quale estrarre le righe associate ad un determinato nome e spostarle su un file che ha quel nome.
Non parliamo di fogli ma di file che devono essere accessibili in una cartella condivisa su una rete aziendale.
Avete, per favore, qualche tipo di indicazione?
Post: 4,736
Registered in: 6/21/2013
Location: NAPOLI
Age: 68
Master User
Excel 2013
ONLINE
7/29/2021 1:59 PM
 
Modify
 
Delete
 
Quote

Se non alleghi file di esempio di Excel con dati e risultato desiderato inserito a mano penso che sia assai difficile che tu possa ricevere indicazioni e/o aiuti.

Come sei messo quanto a conoscenza del VBA?

Se non ne sai niente la vedo dura ma molto dura.

Alfredo
Post: 1,422
Registered in: 6/27/2011
Veteran User
excel 2007
OFFLINE
7/30/2021 9:12 AM
 
Modify
 
Delete
 
Quote

Ciao a tutti, [SM=g27811]
Ciao Daniele
ed un saluto ad Alfredo [SM=g27811]

Il tuo progetto lo hai esposto in maniera chiara tralasciando però alcuni dati salienti:

- Il file di riepilogo e gli altri files sono nella stessa cartella?
- Qual’è il criterio in base al quale dal file di riepilogo, si determina il nome del file da variare?
- Dal file di riepilogo quali sono le righe/Range da copiare nel singolo file?

Premetto che data la mancanza di tali specifiche non fornirò ulteriore supporto,

ma ho considerato che tutti i file siano nella stessa cartella, che i nomi dei file siano nella
colonna “A” del file di riepilogo e che il range da copiare sia la cella”C1”.

A te l’onere di adeguare la macro che segue alle tue esigenze.
Ciao
Frank


vb
Option Explicit
Sub copia_incolla()

'=====================================================================
'modifica il nome della tua cartella
Const percorso = "D:\___copia_incolla\"  'cambia il percorso
'=====================================================================
Dim cartella As String, nome_cartella As String
Dim wk As Workbook, r As Long, sh As Worksheet

Set wk = ThisWorkbook
Set sh = wk.Sheets("foglio1")

r = 1

cartella = Dir(percorso & "*.xl*")
        

    With sh
        Do While .Cells(r, 1) <> ""
            nome_cartella = .Cells(r, 1).Value
            If cartella = nome_cartella Then
                If cartella = wk.Name Then
                Else
'====================================================================================
'modifica il nome della tua cartella
                    Workbooks.Open "D:\___copia_incolla\" & cartella  'cambia il percorso
'====================================================================================
                    With wk
                        ActiveWorkbook.Sheets("Foglio1").Range("c1").Value = Sh.Range("c1").Value
                        '=====================================================================
                        ' se vuoi chiudere il file, togli l'apice all'inizio dell riga seguente
                        'ActiveWorkbook.Close savechanges:=True
                        '=====================================================================
                    End With
                End If
            End If
        
            cartella = Dir
            r = r + 1
        Loop
    End With
    
  

Set sh = Nothing
Set wk = Nothing

End Sub
[Edited by tanimon 7/30/2021 10:48 AM]
Excel 2007

1 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
2 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Post: 1
Registered in: 7/29/2021
Age: 21
Junior User
2016
OFFLINE
8/4/2021 8:32 AM
 
Modify
 
Delete
 
Quote

Grazie Frank, ti do le info mancanti.
I file si trovano tutti nella stessa cartella in rete aziendale perchè devono essere accessibili da piú reparti, il criterio per cui si devono spostare è il nome dell'operatore che dovrá lavorare il documento sulla riga.
Post: 2
Registered in: 7/29/2021
Age: 21
Junior User
2016
OFFLINE
8/4/2021 8:33 AM
 
Modify
 
Delete
 
Quote

Salve Alfredo e grazie, ma purtroppo non posso allegare file essendo le righe piene di dati riferiti ad amministrazione pubblica.
Post: 4,741
Registered in: 6/21/2013
Location: NAPOLI
Age: 68
Master User
Excel 2013
ONLINE
8/4/2021 9:46 AM
 
Modify
 
Delete
 
Quote

Giusto per precisare che quando si richiede un file di esempio non si intende il file originale ma uno strutturalmente uguale ad esso ma compilato con dati non sensibili (di fantasia).

Comunque credo che con @Tanimon (ciao Frank) hai la soluzione.

Alfredo
Post: 1,424
Registered in: 6/27/2011
Veteran User
excel 2007
OFFLINE
8/5/2021 12:18 PM
 
Modify
 
Delete
 
Quote

Mi spiace,
ma al post #3 ho già detto che non fornisco più supporto per questo thread!
Inoltre quelle che credi siano "informazioni mancanti",

a me, non forniscono alcuna delucidazione che ritengo necessaria
per la tua esposizione iniziale.

Saluti.
Frank
Excel 2007

1 - allega SUL FORUM un file di esempio, chi ti vuole aiutare risparmia tempo, e tu forse hai una soluzione prima di quello che ti aspetti :-)
Usa siti di hosting SOLO in estrema necessità: in caso il server del forum abbia problemi.
2 - Ricordati di condividere le soluzioni che trovi da solo: potrebbero essere utili anche per le persone a cui chiedi aiuto.
Admin Thread: | Close | Move | Delete | Modify | Email Notification Previous page | 1 | Next page
New Thread
 | 
Reply
Feed | Forum | Bacheca | Album | Users | Search | Log In | Register | Admin
Tutti gli orari sono GMT+01:00. Adesso sono le 11:17 PM. : Printable | Mobile | Regolamento | Privacy
FreeForumZone [v.6.0] - Copyright © 2000-2021 FFZ srl - www.freeforumzone.com