Forumleden,
Ik heb een vba-script gemaakt om een bepaald groot analyse rapport in excel te zetten, waarbij ik op verschillende tabbladen de verschillende analyses onderbreng.
Uiteindelijk wil ik een tijdsgrafiek maken van alle gevonden resultaten.
Echter,
Als ik de eerste keer het script run doet ie precies zoals het bedoeld is, maar als ik het script een tweede keer run, zet excel de ranges e.d. allemaal anders weg.
Hierdoor lopen mn index-functies in het werkblad in de war en krijg ik als resultaat overal n/a#
Ik heb echt geen flauw idee waarom het de eerste keer WEL lukt (mn script werkt dus !!!) en de 2e volgende keren niet !!!!!
Wie kan me helpen ????
De code is:
Alvast bedankt voor alle hulp......
P.s. als deze post in het VBA-forum hoort, excuses alvast van mijn kant.
Ik heb een vba-script gemaakt om een bepaald groot analyse rapport in excel te zetten, waarbij ik op verschillende tabbladen de verschillende analyses onderbreng.
Uiteindelijk wil ik een tijdsgrafiek maken van alle gevonden resultaten.
Echter,
Als ik de eerste keer het script run doet ie precies zoals het bedoeld is, maar als ik het script een tweede keer run, zet excel de ranges e.d. allemaal anders weg.
Hierdoor lopen mn index-functies in het werkblad in de war en krijg ik als resultaat overal n/a#
Ik heb echt geen flauw idee waarom het de eerste keer WEL lukt (mn script werkt dus !!!) en de 2e volgende keren niet !!!!!
Wie kan me helpen ????
De code is:
Code:
Private Sub CommandButton1_Click()
'' Opent de HTML-file uit de geseletceerde directory ''
Workbooks.Open Filename:="K:\tmp\MR2\PIQT raporten\SPT report.htm"
ActiveSheet.Range("A1:H464").Select
Selection.Copy
Application.DisplayAlerts = False
ActiveWorkbook.Close False
Application.DisplayAlerts = True
''Er wordt een tijdelijk werkblad aangemaakt om de html-file te herschikken''
Sheets("SPT report").Activate
Sheets.Add.Name = "Tijdelijk"
Sheets("Tijdelijk").Select
ActiveSheet.Range("A1").Select
ActiveSheet.Paste
Sheets("SPT report").Visible = True
'De HTML-file wordt geherschikt op het tijdelijke tabblad''
Sheets("Tijdelijk").Activate
ActiveWindow.SmallScroll Down:=45
ActiveSheet.Range("B64:G97").Select
Selection.Cut
ActiveWindow.SmallScroll Down:=-66
ActiveSheet.Range("H15").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=45
ActiveSheet.Rows("49:98").Select
Selection.Delete Shift:=xlUp
ActiveWindow.SmallScroll Down:=45
ActiveSheet.Range("B102:G127").Select
Selection.Cut
ActiveWindow.SmallScroll Down:=-39
ActiveSheet.Range("H62").Select
ActiveSheet.Paste
ActiveWindow.SmallScroll Down:=15
ActiveSheet.Rows("88:128").Select
Selection.Delete Shift:=xlUp
ActiveWindow.SmallScroll Down:=-123
ActiveSheet.Range("A1").Select
''Het herschikte rapport wordt in z'n geheel gekopieerd naar de tabblad SPT report''
ActiveSheet.Range("A1:M373").Select
Selection.Copy
Sheets("SPT report").Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("SPT report").Range("A1").Select
Application.CutCopyMode = False
''Het tijdelijke tabblad wordt gedelete''
Application.DisplayAlerts = False
Sheets("Tijdelijk").Delete
Application.DisplayAlerts = True
Sheets("SPT report").Select
ActiveSheet.Range("A1").Select
''De verschillende onderdelen worden vanuit het report naar de specifieke tabbladen en geplaatst in de eerstvolgende lege regel''
Sheets("Flood Field Uniformity temp").Visible = True
Sheets("Flood Field Uniformity temp").Select
ActiveSheet.Range("A2:J7").Copy
Sheets("Flood Field Uniformity temp").Visible = False
Sheets("Flood Field Uniformity").Select
Set NextRow = ActiveSheet.Cells(Cells.Rows.Count, 1).End(xlUp).Offset(1, 0)
NextRow.Select
Selection.PasteSpecial (xlValues), Transpose:=False
ActiveSheet.Range("A1").Select
Sheets("Spatial Linearity temp").Visible = True
Sheets("Spatial Linearity temp").Select
ActiveSheet.Range("A2:W2").Copy
Sheets("Spatial Linearity temp").Visible = False
Sheets("Spatial Linearity").Select
Set NextRow = ActiveSheet.Cells(Cells.Rows.Count, 1).End(xlUp).Offset(1, 0)
NextRow.Select
Selection.PasteSpecial (xlValues), Transpose:=False
ActiveSheet.Range("A1").Select
Sheets("Slice Profile temp").Visible = True
Sheets("Slice Profile temp").Select
ActiveSheet.Range("A2:G4").Copy
Sheets("Slice Profile temp").Visible = False
Sheets("Slice Profile").Select
Set NextRow = ActiveSheet.Cells(Cells.Rows.Count, 1).End(xlUp).Offset(1, 0)
NextRow.Select
Selection.PasteSpecial (xlValues), Transpose:=False
ActiveSheet.Range("A1").Select
Sheets("Spatial Resolution temp").Visible = True
Sheets("Spatial Resolution temp").Select
ActiveSheet.Range("A2:E3").Copy
Sheets("Spatial Resolution temp").Visible = False
Sheets("Spatial Resolution").Select
Set NextRow = ActiveSheet.Cells(Cells.Rows.Count, 1).End(xlUp).Offset(1, 0)
NextRow.Select
Selection.PasteSpecial (xlValues), Transpose:=False
ActiveSheet.Range("A1").Select
''Het report wordt "onzichtbaar" gemaakt''
Sheets("SPT report").Visible = False
''De gegevens worden gesorteerd op naam, datum en echo-nr''
ActiveWorkbook.Worksheets("Flood Field Uniformity").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Flood Field Uniformity").Sort.SortFields.Add Key:= _
Range("A2:A1000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("Flood Field Uniformity").Sort.SortFields.Add Key:= _
Range("C2:C1000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Flood Field Uniformity").Sort
.SetRange Range("A2:J10000")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
ActiveSheet.Range("A1").Select
End With
ActiveWorkbook.Worksheets("Slice Profile").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Slice Profile").Sort.SortFields.Add Key:= _
Range("A2:A1000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("Slice Profile").Sort.SortFields.Add Key:= _
Range("C2:C1000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Slice Profile").Sort
.SetRange Range("A2:G10000")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
ActiveSheet.Range("A1").Select
End With
ActiveWorkbook.Worksheets("Spatial Resolution").Sort.SortFields.Clear
ActiveWorkbook.Worksheets("Spatial Resolution").Sort.SortFields.Add Key:= _
Range("A2:A1000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
ActiveWorkbook.Worksheets("Spatial Resolution").Sort.SortFields.Add Key:= _
Range("C2:C1000"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= _
xlSortNormal
With ActiveWorkbook.Worksheets("Spatial Resolution").Sort
.SetRange Range("A2:E10000")
.Header = xlYes
.MatchCase = False
.Orientation = xlTopToBottom
.SortMethod = xlPinYin
.Apply
ActiveSheet.Range("A1").Select
End With
''De datum wordt van text-format omgezet in datum-format voor alle werkbladen''
Sheets("Flood Field Uniformity").Activate
ActiveSheet.Range("B2:B10000").Select
Selection.TextToColumns Destination:=Range("B2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
Selection.NumberFormat = "dd/mm/yyyy"
Sheets("Spatial Linearity").Activate
ActiveSheet.Range("B2:B10000").Select
Selection.TextToColumns Destination:=Range("B2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
Selection.NumberFormat = "dd/mm/yyyy"
Sheets("Slice Profile").Activate
ActiveSheet.Range("B2:B10000").Select
Selection.TextToColumns Destination:=Range("B2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
Selection.NumberFormat = "dd/mm/yyyy"
Sheets("Spatial Resolution").Activate
ActiveSheet.Range("B2:B10000").Select
Selection.TextToColumns Destination:=Range("B2"), DataType:=xlDelimited, _
TextQualifier:=xlDoubleQuote, ConsecutiveDelimiter:=True, Tab:=False, _
Semicolon:=False, Comma:=False, Space:=True, Other:=False, FieldInfo _
:=Array(1, 4), TrailingMinusNumbers:=True
Selection.NumberFormat = "dd/mm/yyyy"
''Verspringen naar het eerste tabblad''
Sheets("beginscherm").Activate
End Sub
Alvast bedankt voor alle hulp......
P.s. als deze post in het VBA-forum hoort, excuses alvast van mijn kant.