want code import dat convert to vba array

roykana

Active Member
Joined
Mar 8, 2018
Messages
311
Office Version
  1. 2010
Platform
  1. Windows
Dear All Master,
I want the code below to be an array vba code because the actual record is 100000 so it makes it very slow


thanks
roykana

VBA Code:
Option Explicit
Sub Get_Data_From_File()
    OptimizeVBA True
    Dim FileToOpen As Variant
    Dim OpenBook As Workbook
    Dim wsSelect As Worksheet
    Dim i As Long
    Dim k As Long
    Dim L As Long
    Dim J As Long
    Dim LastRow As Long
    Dim LastColumn As Long
    Dim objTable As ListObject
    Dim objTable2 As String
    Dim startTime As Single, endTime As Single
    Dim TableFound As Boolean
    startTime = Timer
    Set wsSelect = ActiveWorkbook.Sheets("selectfile")
    With wsSelect
        .Columns("A:G").Clear
        .Range("A1").Value = "ID"
        .Range("B1").Value = "DATE & TIME"
        .Range("C1").Value = "DATE"
        .Range("D1").Value = "YEAR"
        .Range("E1").Value = "PERIOD"
        .Range("F1").Value = "CATEGORY"
        .Range("G1").Value = "NAME"
        .Range("A1:G1").HorizontalAlignment = xlCenter
        LastRow = .Range("A1").SpecialCells(xlCellTypeLastCell).Row
    End With
    FileToOpen = Application.GetOpenFilename(Title:="Browse for your File & Import Range", FileFilter:="Dat Files (*.dat*),*dat*", MultiSelect:=True)
    On Error Resume Next
    If IsArray(FileToOpen) Then
        On Error GoTo 0
        For i = LBound(FileToOpen) To UBound(FileToOpen)
            Set OpenBook = Application.Workbooks.Open(FileToOpen(i))
            OpenBook.Sheets(1).Range(Cells(1, 1), Cells(1, 2).End(xlDown)).Copy
            TableFound = TableExists(wsSelect, "TableDat")
            If Not TableFound Then
                wsSelect.Range("A2:B2").PasteSpecial xlPasteValues
                OpenBook.Close False
                wsSelect.Range("A1", "G" & wsSelect.Cells(Rows.Count, "A").End(xlUp).Row).Select
                Set objTable = wsSelect.ListObjects.Add(xlSrcRange, Selection, , xlYes)
                objTable.Name = "TableDat"
            Else
                wsSelect.Cells(Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues
                OpenBook.Close False
            End If
        Next
        With wsSelect
            For k = 2 To LastRow
                .Cells(k, 2).Value = WorksheetFunction.Text(.Cells(k, 2).Value, "DD/MM/YYYY HH.MM")
            Next k
            For L = 2 To LastRow
                .Cells(L, 3).Value = DateSerial(Mid(.Cells(L, 2), 7, 4), Mid(.Cells(L, 2), 4, 2), Mid(.Cells(L, 2), 1, 2))
            Next L
             For J = 2 To LastRow
                 .Cells(J, 4).Value = Format(CDate(Cells(J, 2).Text), "YYYY")
            Next J
        End With
    Else
        If FileToOpen = False Then
            On Error GoTo 0
            GoTo getout
        End If
    End If
getout:
    Application.Goto wsSelect.Range("A1")
    endTime = Timer
    Debug.Print (endTime - startTime) & " seconds have passed [VBA]"
    OptimizeVBA False
End Sub
Sub OptimizeVBA(isOn As Boolean)
    Application.Calculation = IIf(isOn, xlCalculationManual, xlCalculationAutomatic)
    Application.EnableEvents = Not (isOn)
    Application.ScreenUpdating = Not (isOn)
    ActiveSheet.DisplayPageBreaks = Not (isOn)
End Sub

Function TableExists(ws As Worksheet, sTableName As String) As Boolean
    TableExists = ws.Evaluate("ISREF(" & sTableName & ")")
End Function
 
I want the code below to be an array vba code because the actual record is 100000 so it makes it very slow
Hi, a VBA demonstration to fast work directly with an array rather than cells for starters :​
VBA Code:
Sub Demo1()
    Dim V, W, F%, X, S, L&, Y, R&
        V = ThisWorkbook.Path & "\test dat file\":  If Dir(V & "*.dat") > "" Then ChDrive V: ChDir V
        W = Application.GetOpenFilename("Text files,*.dat", , "Select files(s)", , True):  If Not IsArray(W) Then Exit Sub
        F = FreeFile
    With Sheets("selectfile")
        ReDim V(1 To .Rows.Count - 1, 1 To 7)
       .UsedRange.Offset(1).Clear
        Application.ScreenUpdating = False
    For Each X In W
        Open X For Input As #F
        S = Split(Input(LOF(F), #F), vbCrLf)
        Close #F
    For L = 0 To UBound(S)
            Y = Split(S(L), vbTab)
        If UBound(Y) = 5 Then
            R = R + 1
            V(R, 1) = Y(0)
            V(R, 2) = Y(1)
            V(R, 3) = Split(Y(1))(0)
            V(R, 4) = Split(Y(1), "-", 2)(0)
            V(R, 5) = Y(2)
            V(R, 6) = Y(3)
            V(R, 7) = Y(4)
        End If
    Next L, X
       .[A2].Resize(R, UBound(V, 2)).Value2 = V
    End With
        Application.ScreenUpdating = True
End Sub
 
Last edited:
Upvote 0

Excel Facts

Last used cell?
Press Ctrl+End to move to what Excel thinks is the last used cell.
@roykana how about:

VBA Code:
Option Explicit
Sub Get_Data_From_File()
'
    OptimizeVBA True
'
    Dim startTime           As Single
    Dim FileToOpen          As Variant
'
    FileToOpen = Application.GetOpenFilename(Title:="Browse for your File & Import Range", FileFilter:="Dat Files (*.dat*),*dat*", MultiSelect:=True)
'
    startTime = Timer
'
    Dim TableFound          As Boolean
    Dim objTable            As ListObject
    Dim ArraySeparatorRow   As Long
    Dim i                   As Long, J              As Long
    Dim LastRow             As Long
    Dim ListArray_A         As Object, ListArray_B  As Object, ListArray_B_Temp As Object, ListArray_C  As Object, ListArray_D  As Object
    Dim objTable2           As String
    Dim Array_A             As Variant, Array_B     As Variant, Array_A_B       As Variant
    Dim OpenBook            As Workbook
    Dim wsSelect            As Worksheet
'
    Set ListArray_A = CreateObject("System.Collections.ArrayList"): Set ListArray_B = CreateObject("System.Collections.ArrayList")
    Set ListArray_B_Temp = CreateObject("System.Collections.ArrayList")
    Set ListArray_C = CreateObject("System.Collections.ArrayList"): Set ListArray_D = CreateObject("System.Collections.ArrayList")
    Set wsSelect = ActiveWorkbook.Sheets("selectfile")
'
    With wsSelect
        .Columns("A:G").Clear
        .Range("A1:G1").Value = Array("ID", "DATE & TIME", "DATE", "YEAR", "PERIOD", "CATEGORY", "NAME")
        .Range("A1:G1").HorizontalAlignment = xlCenter
    End With
'
    LastRow = 1
'
    If IsArray(FileToOpen) Then
        For i = LBound(FileToOpen) To UBound(FileToOpen)
            Set OpenBook = Application.Workbooks.Open(FileToOpen(i))
'
            LastRow = LastRow + Range("A1").SpecialCells(xlCellTypeLastCell).Row
'
            Array_A_B = OpenBook.Sheets(1).Range(Cells(1, 1), Cells(1, 2).End(xlDown))              ' Copy A:B from dat file to Array_A_B
'
            For ArraySeparatorRow = 1 To UBound(Array_A_B, 1)
                ListArray_A.Add Array_A_B(ArraySeparatorRow, 1)
                ListArray_B_Temp.Add Array_A_B(ArraySeparatorRow, 2)
            Next
'
            OpenBook.Close False
            Erase Array_A_B
        Next
'
        For J = 2 To LastRow
            ListArray_B.Add WorksheetFunction.Text(ListArray_B_Temp(J - 2), "DD/MM/YYYY HH.MM")
            ListArray_C.Add DateSerial(Mid(ListArray_B(J - 2), 7, 4), Mid(ListArray_B(J - 2), 4, 2), Mid(ListArray_B(J - 2), 1, 2))
            ListArray_D.Add Year(ListArray_B(J - 2))
        Next
'
        Range("A2").Resize(ListArray_A.Count, 1).Value = WorksheetFunction.Transpose(ListArray_A.ToArray)
        Range("B2").Resize(ListArray_B.Count, 1).Value = WorksheetFunction.Transpose(ListArray_B.ToArray)
        Range("C2").Resize(ListArray_C.Count, 1).Value = WorksheetFunction.Transpose(ListArray_C.ToArray)
        Range("D2").Resize(ListArray_D.Count, 1).Value = WorksheetFunction.Transpose(ListArray_D.ToArray)
'
        wsSelect.Range("A1", "G" & wsSelect.Cells(Rows.Count, "A").End(xlUp).Row).Select
        Set objTable = wsSelect.ListObjects.Add(xlSrcRange, Selection, , xlYes)             ' Create Table
        objTable.Name = "TableDat"
    End If
'
    wsSelect.Columns("A:G").EntireColumn.AutoFit                                            ' AutoFit the columns for the destination sheet
'
    Application.Goto wsSelect.Range("A1")
'
    OptimizeVBA False
    Debug.Print (Timer - startTime) & " seconds have passed [VBA]"
End Sub
Sub OptimizeVBA(isOn As Boolean)
    Application.Calculation = IIf(isOn, xlCalculationManual, xlCalculationAutomatic)
    Application.EnableEvents = Not (isOn)
    Application.ScreenUpdating = Not (isOn)
    ActiveSheet.DisplayPageBreaks = Not (isOn)
End Sub

Function TableExists(ws As Worksheet, sTableName As String) As Boolean
    TableExists = ws.Evaluate("ISREF(" & sTableName & ")")
End Function

It uses Lists and arrays.
@johnnyL
Dear Mr. johnnyL,

thanks for your reply. Sorry I'm late to reply.
your code has an error "run time error 13" because it can't pass the inappropriate format as I explained in post #13 and your code is still a bit slow and also I didn't test it perfectly because there was an error
Thanks
roykana
 

Attachments

  • WhatsApp Image 2022-01-26 at 19.18.23.jpeg
    WhatsApp Image 2022-01-26 at 19.18.23.jpeg
    22.9 KB · Views: 11
Upvote 0
what is the major problem now ?
run time error 13 in combination with your "option explicit" is adding that variable as variant in your dim line(s)
What is your actual time reading your dat-file(s) (is that a csv-file, txt or what ?) and what is the actual time for processing and writing to your sheet ?
 
Upvote 0
1st method with a defined name that is deleted afterwards, 2nd method with formulas and replace the formula with its value
500,000 cells , method 1 = 3.0 sec, method 2 = 3.5 sec
Don't do both, choose one !
VBA Code:
Sub Speedy()
     t0 = Timer                                                 'start chrono

     With ActiveWorkbook.Sheets("selectfile").Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row)     'my range is 200,000 cells
          'method defined name
          .Name = "test"                                        'make a defined naam
          .NumberFormat = "dd/mm/yyyy hh:mm"                    'nothing is changed, just the format
          myd = [year(test)]                                    '2nd array = just the year
          myc = [trunc(test)]                                   '3rd array = dateserial = integer part
          .Offset(, 1).Value = myc                              'write to D-column (later your C)
          .Offset(, 1).NumberFormat = "dd/mm/yyyy"              'nothing is changed, just the format
          .Offset(, 2).Value = myd                              'write to E-column (later your D)
          ActiveWorkbook.Names("test").Delete                   'delete the defined name

          t2 = Timer

     'method formulas
          .Offset(, 1).FormulaR1C1 = "=TRUNC(RC[-1])"           'take integer part
          .Offset(, 2).FormulaR1C1 = "=YEAR(RC[-2])"            'take year
          With .Offset(, 1).Resize(, 2)
               .Value = .Value                                  'replace formula by its value
          End With

          t3 = Timer

     End With


     MsgBox "method defined name : " & t2 - t0 & vbLf & "method formulas : " & t3 - t2

End Sub

JohnnyL suggested lists and arrays, i took just a part of the macro which made the greatest difference i suppose. How much is the execution time reduced ?

After reading JohnnyL's solution, do everything in 1 dictionary !
@BSALV
Dear Mr. BSALV,
Thank you for your reply. Sorry I'm late to reply.

I've put it together with your code, then there's a confirmation if I do multi-select whether it can be bypassed. Below I attach a screenshot and also the processing time with your code. for column B the format should be general or text.


VBA Code:
    OptimizeVBA True
    Dim FileToOpen As Variant
    Dim OpenBook As Workbook
    Dim wsSelect As Worksheet
    Dim i As Long
    Dim k As Long
    Dim L As Long
    Dim J As Long
    Dim LastRow As Long
    Dim LastColumn As Long
    Dim objTable As ListObject
    Dim objTable2 As String
    Dim startTime As Single, endTime As Single
    Dim TableFound As Boolean
    startTime = Timer
    Set wsSelect = ActiveWorkbook.Sheets("selectfile")
    With wsSelect
        .Columns("A:G").Clear
        .Range("A1").Value = "ID"
        .Range("B1").Value = "DATE & TIME"
        .Range("C1").Value = "DATE"
        .Range("D1").Value = "YEAR"
        .Range("E1").Value = "PERIOD"
        .Range("F1").Value = "CATEGORY"
        .Range("G1").Value = "NAME"
        .Range("A1:G1").HorizontalAlignment = xlCenter
        LastRow = .Range("A1").SpecialCells(xlCellTypeLastCell).Row
    End With
    FileToOpen = Application.GetOpenFilename(Title:="Browse for your File & Import Range", FileFilter:="Dat Files (*.dat*),*dat*", MultiSelect:=True)
    On Error Resume Next
    If IsArray(FileToOpen) Then
        On Error GoTo 0
        For i = LBound(FileToOpen) To UBound(FileToOpen)
            Set OpenBook = Application.Workbooks.Open(FileToOpen(i))
            OpenBook.Sheets(1).Range(Cells(1, 1), Cells(1, 2).End(xlDown)).Copy
            TableFound = TableExists(wsSelect, "TableDat")
            If Not TableFound Then
                wsSelect.Range("A2:B2").PasteSpecial xlPasteValues
                OpenBook.Close False
                wsSelect.Range("A1", "G" & wsSelect.Cells(Rows.Count, "A").End(xlUp).Row).Select
                Set objTable = wsSelect.ListObjects.Add(xlSrcRange, Selection, , xlYes)
                objTable.Name = "TableDat"
            Else
                wsSelect.Cells(Rows.Count, "A").End(xlUp).Offset(1).PasteSpecial xlPasteValues
                OpenBook.Close False
            End If
        Next
        
         With ActiveWorkbook.Sheets("selectfile").Range("B2:B" & Range("B" & Rows.Count).End(xlUp).Row)     'my range is 200,000 cells
          'method defined name
          .Name = "test"                                        'make a defined naam
          .NumberFormat = "dd/mm/yyyy hh:mm"                    'nothing is changed, just the format
          myd = [year(test)]                                    '2nd array = just the year
          myc = [trunc(test)]                                   '3rd array = dateserial = integer part
          .Offset(, 1).Value = myc                              'write to D-column (later your C)
          .Offset(, 1).NumberFormat = "dd/mm/yyyy"              'nothing is changed, just the format
          .Offset(, 2).Value = myd                              'write to E-column (later your D)
          ActiveWorkbook.Names("test").Delete                   'delete the defined name
End With
        
'        With wsSelect
'            For k = 2 To LastRow
'                .Cells(k, 2).Value = WorksheetFunction.Text(.Cells(k, 2).Value, "DD/MM/YYYY HH.MM")
'            Next k
'            For L = 2 To LastRow
'                .Cells(L, 3).Value = DateSerial(Mid(.Cells(L, 2), 7, 4), Mid(.Cells(L, 2), 4, 2), Mid(.Cells(L, 2), 1, 2))
'            Next L
'             For J = 2 To LastRow
'                 .Cells(J, 4).Value = Format(CDate(Cells(J, 2).Text), "YYYY")
'            Next J
'        End With
    Else
        If FileToOpen = False Then
            On Error GoTo 0
            GoTo getout
        End If
    End If
getout:
    Application.Goto wsSelect.Range("A1")
    endTime = Timer
    Debug.Print (endTime - startTime) & " seconds have passed [VBA]"
    OptimizeVBA False
End Sub
Sub OptimizeVBA(isOn As Boolean)
    Application.Calculation = IIf(isOn, xlCalculationManual, xlCalculationAutomatic)
    Application.EnableEvents = Not (isOn)
    Application.ScreenUpdating = Not (isOn)
    ActiveSheet.DisplayPageBreaks = Not (isOn)
End Sub

Function TableExists(ws As Worksheet, sTableName As String) As Boolean
    TableExists = ws.Evaluate("ISREF(" & sTableName & ")")
End Function
Thanks
roykana
 

Attachments

  • LARGEAMOUNT.JPG
    LARGEAMOUNT.JPG
    24.2 KB · Views: 12
  • RESULTTIME.JPG
    RESULTTIME.JPG
    17.3 KB · Views: 13
Upvote 0
Hi, a VBA demonstration to fast work directly with an array rather than cells for starters :​
VBA Code:
Sub Demo1()
    Dim V, W, F%, X, S, L&, Y, R&
        V = ThisWorkbook.Path & "\test dat file\":  If Dir(V & "*.dat") > "" Then ChDrive V: ChDir V
        W = Application.GetOpenFilename("Text files,*.dat", , "Select files(s)", , True):  If Not IsArray(W) Then Exit Sub
        F = FreeFile
    With Sheets("selectfile")
        ReDim V(1 To .Rows.Count - 1, 1 To 7)
       .UsedRange.Offset(1).Clear
        Application.ScreenUpdating = False
    For Each X In W
        Open X For Input As #F
        S = Split(Input(LOF(F), #F), vbCrLf)
        Close #F
    For L = 0 To UBound(S)
            Y = Split(S(L), vbTab)
        If UBound(Y) = 5 Then
            R = R + 1
            V(R, 1) = Y(0)
            V(R, 2) = Y(1)
            V(R, 3) = Split(Y(1))(0)
            V(R, 4) = Split(Y(1), "-", 2)(0)
            V(R, 5) = Y(2)
            V(R, 6) = Y(3)
            V(R, 7) = Y(4)
        End If
    Next L, X
       .[A2].Resize(R, UBound(V, 2)).Value2 = V
    End With
        Application.ScreenUpdating = True
End Sub
@Marc L
Dear Mr. Marc L,
Thank you for your reply. Sorry I'm late to reply.

I tried your code and I attached a screenshot of the result time and result your code, in your code there are no tables and headers.

in your code it's better to have a comment matrix so it's easy to learn.

Thanks
roykana
 

Attachments

  • RESULTTIME2.JPG
    RESULTTIME2.JPG
    19.5 KB · Views: 12
  • RESULTyourcode.JPG
    RESULTyourcode.JPG
    65.6 KB · Views: 12
Upvote 0
i think this is enough.
Didn't test it, because i didn't have a *.dat file
VBA Code:
Option Explicit
Sub Get_Data_From_File()
     Dim FileToOpen As Variant
     Dim OpenBook As Workbook
     Dim i     As Long
     Dim startTime As Single, endTime As Single
     Dim Dict, Arr, Arr1, r, C, LO

     'OptimizeVBA True 'not necessary

     startTime = Timer
     Set Dict = CreateObject("scripting.dictionary")

     With ActiveWorkbook.Sheets("selectfile")                   'your sheet
          Application.Goto .Range("A1")
          Set C = .Range("A1").Resize(, 7)                      'headerrow
          C.EntireColumn.Clear
          C.Value = Array("ID", "DATE & TIME", "DATE", "YEAR", "PERIOD", "CATEGORY", "NAME")     'fill headerrow
          C.HorizontalAlignment = xlCenter
          Set LO = .ListObjects.Add(xlSrcRange, C, , xlYes)     'make listobject
          On Error Resume Next
          LO.Name = "TableDat"
          On Error GoTo 0
     End With

     FileToOpen = Application.GetOpenFilename(Title:="Browse for your File & Import Range", FileFilter:="Dat Files (*.dat*),*dat*", MultiSelect:=True)
     On Error Resume Next
     If IsArray(FileToOpen) Then
          On Error GoTo 0
          For i = LBound(FileToOpen) To UBound(FileToOpen)
               Set OpenBook = Application.Workbooks.Open(FileToOpen(i))
               Arr = OpenBook.Sheets(1).Range(Cells(1, 1), Cells(1, 2).End(xlDown)).Value
               For r = 1 To UBound(Arr)
                    Dict.Add Dict.Count, Array(Arr(r, 1), Arr(r, 2), Int(Arr(r, 2)), Year(Arr(r, 2)))
               Next
               OpenBook.Close False
          Next
     End If

     With LO                                                    'your list
          If Dict.Count Then
               Arr1 = Application.Index(Dict.items, 0, 0)
               .ListRows.Add.Range.Range("A1").Resize(UBound(Arr1), UBound(Arr1, 2)).Value = Arr1
          End If
     End With

     endTime = Timer
Debug.Print (endTime - startTime) & " seconds have passed [VBA]"
     'OptimizeVBA False
End Sub
 
Upvote 0
@BSALV
Dear Mr. BSALV,
Thank you for your reply.
there is an error "run time error 13" because the date format does not match
"1971--10--29 -23:-59:-37" >> this represents the contents of the dat file that caused the error
 

Attachments

  • error26012022.JPG
    error26012022.JPG
    18.3 KB · Views: 10
  • linecodeerror.JPG
    linecodeerror.JPG
    43.5 KB · Views: 10
  • WhatsApp Image 2022-01-26 at 20.23.10.jpeg
    WhatsApp Image 2022-01-26 at 20.23.10.jpeg
    88.2 KB · Views: 11
  • cause of error.JPG
    cause of error.JPG
    46 KB · Views: 9
Upvote 0
I tried your code and I attached a screenshot of the result time and result your code
Not same result on my side, maybe 'cause we do not have the same Windows regional settings or Excel version.​
Anyway try with Value Rather than Value2 …​
And as a demonstration for starters you can add the codeline to create a table.​
 
Upvote 0
small adjustment in that loop
VBA Code:
 For r = 1 To UBound(arr)
          s = Replace(arr(r, 2), "-", "")                       'delete "-" in that string arr(r,2)
          arr(r, 2) = CDbl(DateSerial(Mid(s, 1, 4), Mid(s, 5, 2), Mid(s, 7, 2)) + TimeValue(Mid(s, 10)))     'assign a double value to that element
          Dict.Add Dict.Count, Array(arr(r, 1), arr(r, 2), Int(arr(r, 2)), Year(arr(r, 2)))     'write to the dictionary
     Next
and add s to that dim-line
 
Upvote 0
small adjustment in that loop
VBA Code:
 For r = 1 To UBound(arr)
          s = Replace(arr(r, 2), "-", "")                       'delete "-" in that string arr(r,2)
          arr(r, 2) = CDbl(DateSerial(Mid(s, 1, 4), Mid(s, 5, 2), Mid(s, 7, 2)) + TimeValue(Mid(s, 10)))     'assign a double value to that element
          Dict.Add Dict.Count, Array(arr(r, 1), arr(r, 2), Int(arr(r, 2)), Year(arr(r, 2)))     'write to the dictionary
     Next
and add s to that dim-line
still error
 

Attachments

  • error26012022-01.JPG
    error26012022-01.JPG
    24.2 KB · Views: 10
Upvote 0

Forum statistics

Threads
1,224,823
Messages
6,181,183
Members
453,020
Latest member
Mohamed Magdi Tawfiq Emam

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top