Salve a tutti, premetto che sono alle prime armi con vba ed in effetti mi ritrovo ad affrontare il seguente problema a tutt’ora irrisolto:
Ogni volta che vba elabora i dati come indicato dalla macro, dovrebbe sempre nello stesso file denominato “dispersione 2”:
aprire un nuovo foglio, trasferendo dentro tutto quanto presente nel foglio di INPUT e denominare
automaticamente con numero progressivo, il nuovo foglio appena creato.
Non riesco ad attuare quanto sopra; qualcuno mi puo’ aiutare?
Allego la macro al fine di comprendere dove sta la mancanza o l’errore.
Grazie per il supporto.
-------------------------
Sub GioErm10()
'
' GioErm10 Macro
'
Workbooks.Open Filename:="C:\MAX\source_file.csv"
Columns("A:A").Select
Selection.TextToColumns Destination:=Range("A1"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=False, Tab:=False, _
Semicolon:=False, Comma:=True, Space:=False, Other:=False, FieldInfo _
:=Array(Array(1, 1), Array(2, 1), Array(3, 1), Array(4, 1), Array(5, 1), Array(6, 1), _
Array(7, 1), Array(8, 1)), TrailingMinusNumbers:=True
Rows("1:1").Select
Selection.Delete Shift:=xlUp
Columns("A:A").Select
Selection.Delete Shift:=xlToLeft
Range("H1").Select
ActiveCell.FormulaR1C1 = "=CONCATENATE(RC[-7],"",""+RC[-6])"
ActiveCell.FormulaR1C1 = "=CONCATENATE(RC[-7],"","",+RC[-6])"
Range("I1").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=CONCATENATE(RC[-6],"","",RC[-5])"
Range("I2").Select
Application.CutCopyMode = False
ActiveCell.FormulaR1C1 = "=CONCATENATE(R[-1]C[-4],"","",R[-1]C[-3])"
Range("I2").Select
Selection.Cut Destination:=Range("J1")
Range("H1:J1").Select
Selection.Copy
Range("H2:J34").Select
ActiveSheet.Paste
Range("H1:J34").Select
Application.CutCopyMode = False
Selection.Copy
Range("L1").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
ActiveWindow.SmallScroll Down:=0
Range("A1:J34").Select
Range("J1").Activate
Application.CutCopyMode = False
Selection.ClearContents
Range("L1:N34").Select
Selection.Cut
Range("A1").Select
ActiveSheet.Paste
Selection.Copy
Windows("Grafico dispersione2.xlsx").Activate
ActiveWindow.SmallScroll Down:=-24
'Per inserire i dati del D.C, digitare E4; per inserire i dati di stampa, digitare B4
Range("b4").Select
ActiveSheet.Paste
Application.WindowState = xlNormal
Windows("PERSONAL.XLSB").Activate
Windows("Grafico dispersione2.xlsx").Activate
Application.WindowState = xlMaximized
Application.CutCopyMode = False
ChDir "C:\max\folder_storage"
Sheets("INPUT").Range("B1:U37").Copy
ActiveWorkbook.Sheets.Add After:=Worksheets(Worksheets.Count)
Range("B1:U37").Select
ActiveSheet.Paste
ActiveWorkbook.SaveAs Filename:="C:\max\folder_storage\3.xlsx", FileFormat _
:=xlOpenXMLWorkbook, CreateBackup:=False
ActiveWorkbook.Close
ActiveWindow.Close
End Sub