+ Reply to Thread
Results 1 to 6 of 6

code dont read the line

Hybrid View

  1. #1
    Registered User
    Join Date
    02-29-2012
    Location
    Copenhagen Denmark
    MS-Off Ver
    Excel 2007
    Posts
    17

    code dont read the line

    hey exp.

    i have taken over a macro from another, he is not in the company longer.
    the macro reads an ark from excel and then sending it to a program called. host on-demand.

    it is the dessinNr. if a number is only in 3 numbers it is to put 0 in front but this function don work, if the is under 5 number it joust stops ..

    
    Sub tjekData()
    'tjek dessinnr kolli osv
    
    
    End Sub
    
    Sub AddMyData()
    
    Dim myString As String
    
    Dim i As Integer, n As Integer, tjekINT As Integer, sKlop As Integer
    Dim dessinNr() As Variant
    
    n = ActiveSheet.Cells(2, 2).CurrentRegion.Rows.Count - 3
    ReDim dessinNr(3, n)
    
    tjekINT = 1
    For i = 1 To n
        'tjek if cells are hidden - use tjekINT
        If Cells(3 + i, 1).RowHeight = 0 Then
            GoTo LooPing
        End If
        
        dessinNr(0, tjekINT) = Cells(3 + i, 1) 'kæde
        dessinNr(1, tjekINT) = Cells(3 + i, 18) 'dessinnr
        dessinNr(2, tjekINT) = Round(Cells(3 + i, 20)) 'kolli
        dessinNr(3, tjekINT) = Cells(1, 17) 'uge
        tjekINT = tjekINT + 1
        
    LooPing:
    Next
    
    tjekINT = tjekINT - 1
    'Exit Sub
    
    myString = "<HAScript name=""numedmus"" description="""" timeout=""60000"" pausetime=""300"" promptall=""true"" blockinput=""false"" author=""IK01LOG"" creationdate=""28-03-2012 14:32:58"" supressclearevents=""false"" usevars=""false"" ignorepauseforenhancedtn=""true"" delayifnotenhancedtn=""0"" ignorepausetimeforenhancedtn=""true"">"
    
    sKlop = 1
    For i = 1 To tjekINT
    myString = myString & vbNewLine
    myString = myString & "<screen name=""Skærm"
    myString = myString & sKlop & """ entryscreen="""
    If i = 1 Then
        myString = myString & "true"" exitscreen=""false"" transient=""false"">"
        Else
        myString = myString & "false"" exitscreen=""false"" transient=""false"">"
    End If
    
    myString = myString & vbNewLine
    myString = myString & "<description >"
    myString = myString & vbNewLine
    myString = myString & "<oia status=""NOTINHIBITED"" optional=""false"" invertmatch=""false"" />"
    myString = myString & vbNewLine
    myString = myString & "</description>"
    myString = myString & vbNewLine
    myString = myString & "<actions>"
    myString = myString & vbNewLine
    myString = myString & "<mouseclick row=""5"" col=""3"" />"
    myString = myString & vbNewLine
    myString = myString & "<input value="""
    
    Select Case Len(dessinNr(0, i))
    Case 1
    myString = myString & "0" & dessinNr(0, i) & dessinNr(3, i) & dessinNr(1, i) & "A[enter]"" row=""0"" col=""0"" movecursor=""true"" xlatehostkeys=""true"" encrypted=""false"" />"
    Case 2
    myString = myString & dessinNr(0, i) & dessinNr(3, i) & dessinNr(1, i) & "A[enter]"" row=""0"" col=""0"" movecursor=""true"" xlatehostkeys=""true"" encrypted=""false"" />"
    End Select
    
    myString = myString & vbNewLine
    myString = myString & "</actions>"
    myString = myString & vbNewLine
    myString = myString & "<nextscreens timeout=""0"" >"
    myString = myString & vbNewLine
    sKlop = sKlop + 1
    myString = myString & "<nextscreen name=""Skærm" & sKlop & """ />"
    myString = myString & vbNewLine
    myString = myString & "</nextscreens>"
    myString = myString & vbNewLine
    myString = myString & "</screen>"
    myString = myString & vbNewLine
    myString = myString & vbNewLine
    
    'nyt skærmbillede
    
    If i = tjekINT Then
    myString = myString & "<screen name=""Skærm" & sKlop & """ entryscreen=""false"" exitscreen=""true"" transient=""false"">"
        Else
    myString = myString & "<screen name=""Skærm" & sKlop & """ entryscreen=""false"" exitscreen=""false"" transient=""false"">"
    End If
    
    myString = myString & vbNewLine
    myString = myString & "<description >"
    myString = myString & vbNewLine
    myString = myString & "<oia status=""NOTINHIBITED"" optional=""false"" invertmatch=""false"" />"
    myString = myString & vbNewLine
    myString = myString & "</description>"
    myString = myString & vbNewLine
    myString = myString & "<actions>"
    myString = myString & vbNewLine
    myString = myString & "<mouseclick row=""14"" col=""52"" />"
    myString = myString & vbNewLine
    myString = myString & "<input value="""
    
    Select Case Len(dessinNr(2, i))
        Case 1
        myString = myString & "000000" & dessinNr(2, i)
        Case 2
        myString = myString & "00000" & dessinNr(2, i)
        Case 3
        myString = myString & "0000" & dessinNr(2, i)
        Case 4
        myString = myString & "000" & dessinNr(2, i)
        Case 5
        myString = myString & "00" & dessinNr(2, i)
        Case 6
        myString = myString & "0" & dessinNr(2, i)
        Case 7
        myString = myString & dessinNr(2, i)
        Case 8
        MsgBox "there is something rotten in the state of Denmark"
    End Select
    
    myString = myString & "[pf5]"" row=""0"" col=""0"" movecursor=""true"" xlatehostkeys=""true"" encrypted=""false"" />"
    myString = myString & vbNewLine
    myString = myString & "</actions>"
    myString = myString & vbNewLine
    myString = myString & "<nextscreens timeout=""0"" >"
    myString = myString & vbNewLine
    
    sKlop = sKlop + 1
    If i = tjekINT Then
    
    Else
    myString = myString & "<nextscreen name=""Skærm" & sKlop & """ />"
    myString = myString & vbNewLine
    End If
    
    myString = myString & "</nextscreens>"
    myString = myString & vbNewLine
    myString = myString & "</screen>"
    myString = myString & vbNewLine
    
    If i = tjekINT Then
    myString = myString & "</HAScript>"
    End If
    
    Next
        Open "C:\Documents and Settings\kj02log\HODObjs\numedmus.mac" For Output As #1
          Print #1, myString
        Close #1
    
    'Exit Sub
    
    
       ' Open "X:\Coop\Logistik\Projekter\Makro\tasterobot.mac" For Output As #1
       '   Print #1, myString
       ' Close #1
    
    
        'Open "C:\Documents and Settings\ik01log\HODObjs\inuk9.mac" For Append As #1
        '  Print #1, myString
        'Close #1
        
    End Sub

  2. #2
    Forum Expert JBeaucaire's Avatar
    Join Date
    03-21-2004
    Location
    Bakersfield, CA
    MS-Off Ver
    2010, 2016, Office 365
    Posts
    33,492

    Re: code dont read the line

    I would think you could replace this:

    Select Case Len(dessinNr(2, i))
        Case 1
        myString = myString & "000000" & dessinNr(2, i)
        Case 2
        myString = myString & "00000" & dessinNr(2, i)
        Case 3
        myString = myString & "0000" & dessinNr(2, i)
        Case 4
        myString = myString & "000" & dessinNr(2, i)
        Case 5
        myString = myString & "00" & dessinNr(2, i)
        Case 6
        myString = myString & "0" & dessinNr(2, i)
        Case 7
        myString = myString & dessinNr(2, i)
        Case 8
        MsgBox "there is something rotten in the state of Denmark"
    End Select
    With this:
    myString = Format(dessinNr(2, i), "0000000")
    _________________
    Microsoft MVP 2010 - Excel
    Visit: Jerry Beaucaire's Excel Files & Macros

    If you've been given good help, use the icon below to give reputation feedback, it is appreciated.
    Always put your code between code tags. [CODE] your code here [/CODE]

    ?None of us is as good as all of us? - Ray Kroc
    ?Actually, I *am* a rocket scientist.? - JB (little ones count!)

  3. #3
    Forum Expert JBeaucaire's Avatar
    Join Date
    03-21-2004
    Location
    Bakersfield, CA
    MS-Off Ver
    2010, 2016, Office 365
    Posts
    33,492

    Re: code dont read the line

    Thanks for the feedback.

    If that takes care of your need, please select Thread Tools from menu above and set this topic to SOLVED.

  4. #4
    Registered User
    Join Date
    02-29-2012
    Location
    Copenhagen Denmark
    MS-Off Ver
    Excel 2007
    Posts
    17

    Re: code dont read the line

    hey it seems that this thing keeps on. i was thinking is the a way that i can put 0 in front of numbers in row R. but only if the is under 6 numbers the macro understands. from 6 and op therefore i was thinking, that if the was 0 in front from 6 and down that would be the solution ...

    i need some how to make this a part of the macro, so it will works automatically, when they pres play

    Sub AddMyData()
    
    Dim myString As String
    
    Dim i As Integer, n As Integer, tjekINT As Integer, sKlop As Integer
    Dim dessinNr() As Variant
    
    n = ActiveSheet.Cells(2, 2).CurrentRegion.Rows.Count - 3
    ReDim dessinNr(3, n)
    
    tjekINT = 1
    For i = 1 To n
        'tjek if cells are hidden - use tjekINT
        If Cells(3 + i, 1).RowHeight = 0 Then
            GoTo LooPing
        End If
        
        dessinNr(0, tjekINT) = Cells(3 + i, 1) 'kæde
        dessinNr(1, tjekINT) = Cells(3 + i, 18) 'dessinnr
        dessinNr(2, tjekINT) = Round(Cells(3 + i, 20)) 'kolli
        dessinNr(3, tjekINT) = Cells(1, 17) 'uge
        tjekINT = tjekINT + 1
        
    LooPing:
    Next
    
    tjekINT = tjekINT - 1
    'Exit Sub
    
    myString = "<HAScript name=""numedmus"" description="""" timeout=""60000"" pausetime=""300"" promptall=""true"" blockinput=""false"" author=""IK01LOG"" creationdate=""28-03-2012 14:32:58"" supressclearevents=""false"" usevars=""false"" ignorepauseforenhancedtn=""true"" delayifnotenhancedtn=""0"" ignorepausetimeforenhancedtn=""true"">"
    
    sKlop = 1
    For i = 1 To tjekINT
    myString = myString & vbNewLine
    myString = myString & "<screen name=""Skærm"
    myString = myString & sKlop & """ entryscreen="""
    If i = 1 Then
        myString = myString & "true"" exitscreen=""false"" transient=""false"">"
        Else
        myString = myString & "false"" exitscreen=""false"" transient=""false"">"
    End If
    
    myString = myString & vbNewLine
    myString = myString & "<description >"
    myString = myString & vbNewLine
    myString = myString & "<oia status=""NOTINHIBITED"" optional=""false"" invertmatch=""false"" />"
    myString = myString & vbNewLine
    myString = myString & "</description>"
    myString = myString & vbNewLine
    myString = myString & "<actions>"
    myString = myString & vbNewLine
    myString = myString & "<mouseclick row=""5"" col=""3"" />"
    myString = myString & vbNewLine
    myString = myString & "<input value="""
    
    Select Case Len(dessinNr(0, i))
    Case 1
    myString = myString & "0" & dessinNr(0, i) & dessinNr(3, i) & dessinNr(1, i) & "A[enter]"" row=""0"" col=""0"" movecursor=""true"" xlatehostkeys=""true"" encrypted=""false"" />"
    Case 2
    myString = myString & dessinNr(0, i) & dessinNr(3, i) & dessinNr(1, i) & "A[enter]"" row=""0"" col=""0"" movecursor=""true"" xlatehostkeys=""true"" encrypted=""false"" />"
    End Select
    
    myString = myString & vbNewLine
    myString = myString & "</actions>"
    myString = myString & vbNewLine
    myString = myString & "<nextscreens timeout=""0"" >"
    myString = myString & vbNewLine
    sKlop = sKlop + 1
    myString = myString & "<nextscreen name=""Skærm" & sKlop & """ />"
    myString = myString & vbNewLine
    myString = myString & "</nextscreens>"
    myString = myString & vbNewLine
    myString = myString & "</screen>"
    myString = myString & vbNewLine
    myString = myString & vbNewLine
    
    'nyt skærmbillede
    
    If i = tjekINT Then
    myString = myString & "<screen name=""Skærm" & sKlop & """ entryscreen=""false"" exitscreen=""true"" transient=""false"">"
        Else
    myString = myString & "<screen name=""Skærm" & sKlop & """ entryscreen=""false"" exitscreen=""false"" transient=""false"">"
    End If
    
    myString = myString & vbNewLine
    myString = myString & "<description >"
    myString = myString & vbNewLine
    myString = myString & "<oia status=""NOTINHIBITED"" optional=""false"" invertmatch=""false"" />"
    myString = myString & vbNewLine
    myString = myString & "</description>"
    myString = myString & vbNewLine
    myString = myString & "<actions>"
    myString = myString & vbNewLine
    myString = myString & "<mouseclick row=""14"" col=""52"" />"
    myString = myString & vbNewLine
    myString = myString & "<input value="""
    
    Select Case myString = Format(dessinNr(2, i), "0000000")
    End Select
    
    myString = myString & "[pf5]"" row=""0"" col=""0"" movecursor=""true"" xlatehostkeys=""true"" encrypted=""false"" />"
    myString = myString & vbNewLine
    myString = myString & "</actions>"
    myString = myString & vbNewLine
    myString = myString & "<nextscreens timeout=""0"" >"
    myString = myString & vbNewLine
    
    sKlop = sKlop + 1
    If i = tjekINT Then
    
    Else
    myString = myString & "<nextscreen name=""Skærm" & sKlop & """ />"
    myString = myString & vbNewLine
    End If
    
    myString = myString & "</nextscreens>"
    myString = myString & vbNewLine
    myString = myString & "</screen>"
    myString = myString & vbNewLine
    
    If i = tjekINT Then
    myString = myString & "</HAScript>"
    End If
    
    Next
        Open "C:\Documents and Settings\ar00log\HODObjs\numedmus.mac" For Output As #1
          Print #1, myString
        Close #1
    
    'Exit Sub
    
    
       ' Open "X:\Coop\Logistik\Projekter\Makro\tasterobot.mac" For Output As #1
       '   Print #1, myString
       ' Close #1
    
    
        'Open "C:\Documents and Settings\ik01log\HODObjs\inuk9.mac" For Append As #1
        '  Print #1, myString
        'Close #1
        
    End Sub
    Attached Files Attached Files

  5. #5
    Forum Expert JBeaucaire's Avatar
    Join Date
    03-21-2004
    Location
    Bakersfield, CA
    MS-Off Ver
    2010, 2016, Office 365
    Posts
    33,492

    Re: code dont read the line

    I think you mean this:

        myString = myString & dessinNr(0, i) & dessinNr(3, i) & Format(dessinNr(1, i), "000000") & "A[enter]"" row=""0"" col=""0"" movecursor=""true"" xlatehostkeys=""true"" encrypted=""false"" />"
    Attached Files Attached Files

  6. #6
    Registered User
    Join Date
    02-29-2012
    Location
    Copenhagen Denmark
    MS-Off Ver
    Excel 2007
    Posts
    17

    Re: code dont read the line

    hey it solved the problem, but the next one, is that the data that are transfer over. is no incorrect. therefore i was thinking is the a way to put, the 0 ind-front from 5 and down in the excel ark. and then use the original macro ?

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts

Search Engine Friendly URLs by vBSEO 3.6.0 RC 1