Rank: AiutAmico
Iscritto dal : 5/10/2010 Posts: 723
|
Ciao, al fine di alleggerire il carico all'interno di una serie di cartelle di lavoro, sto studiando la possibilità di redigere un file polivalente dato che la "struttura portante" di tutti i file interessati è identica e l'unica variablie è costituita dal database da importare. Il problema sarebbe risolto brillantemente se riuscissi ad intervenire in questa macro
Sub Importa_DATA() Application.ScreenUpdating = False Workbooks.Open Filename:="C:\percorso\fileNcoldatabasedaimportare.xlsm" Windows("fileNcoldatabasedaimportare.xlsm").Activate Sheets("Foglio 2").Select Range("a18", Range("g" & Rows.Count).End(xlUp)).Select Selection.Copy Windows("fileincuiimportoildatabase.xlsm").Activate Sheets("foglio 2").Select Range("A18").Select ActiveSheet.Paste Sheets("FR").Select Range("A3").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Sheets("FR.2").Select Range("A3").Select Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _ :=False, Transpose:=False Application.CutCopyMode = False Windows(fileNcoldatabasedaimportare.xlsm").Activate Range("ah18", Range("ah" & Rows.Count).End(xlUp)).Select Selection.Copy Windows("fileincuiimportoildatabase.xlsm").Activate Range("H3").Select ActiveSheet.Paste Range("A1").Select Sheets("FR").Select Range("H3").Select ActiveSheet.Paste Application.CutCopyMode = False Range("A1").Select Windows("fileNcoldatabasedaimportare.xlsm").Activate ActiveWindow.Close Sheets("Foglio 2").Select Range("A1").Select Application.ScreenUpdating = True End Sub
previa l'introduzione di una MsgBox in cui inserire, usando un numero dedicato, il riferimento al file col database da importare. Ad esempio, scrivendo nella MsgBox 1 ci si riferirebbe a C:\percorso\file1coldatabasedaimportare.xlsm 2 ci si riferirebbe a C:\percorso\file2coldatabasedaimportare.xlsm 3 ci si riferirebbe a C:\percorso\file3coldatabasedaimportare.xlsm 4 ci si riferirebbe a C:\percorso\file4coldatabasedaimportare.xlsm In pratica quel numero inserito nella MsgBox darebbe alla macro un indirizzo esatto in cui lavorare... (righe scritte in rosso)
E' pura follia o è una strada praticabile? Grazie infinite per tutto... buon pomeriggio eZio
|