Runtime error 9

Collapse
X
 
  • زمان
  • نمایش
حذف همه
new posts
  • frmm
    • 2019/05/15
    • 2

    پرسش Runtime error 9

    با عرض سلام و ادب
    مشکلی که بنده دارم در شرکت ما برخی از سیستم‌ها با خطای Runtime error 9 مواجه می‌شود و combox که انتخاب می شود این خطا رویت می شود، مسئله ای که وجود دارد این هست که چرا در برخی از سیستم ها این خطا داده می شود هر کاری که تونستم انجام دادم اما مشکل حل نمی شود، لطفا راهنمایی بفرمایید
  • میثم مقدم نیا

    • 2017/03/23
    • 558
    • 41.00

    #2
    نوشته اصلی توسط frmm
    با عرض سلام و ادب
    مشکلی که بنده دارم در شرکت ما برخی از سیستم‌ها با خطای Runtime error 9 مواجه می‌شود و combox که انتخاب می شود این خطا رویت می شود، مسئله ای که وجود دارد این هست که چرا در برخی از سیستم ها این خطا داده می شود هر کاری که تونستم انجام دادم اما مشکل حل نمی شود، لطفا راهنمایی بفرمایید
    لطفا فایلتون راپیوست کنید ببینمدمشکل از کجاست
    [HR][SIZE=5][COLOR="#0000FF"][FONT=Times New Roman][B] در سرزمینی کہ نتوان مردانہ زیست ، مردانہ مردن بهتر از این زندگیست [/B][/FONT][/COLOR][/SIZE][/HR]

    کامنت

    • frmm
      • 2019/05/15
      • 2

      #3
      Private Sub CommandOK_Click()


      Sheets(1).Cells(19, 1) = Environ("USERNAME") & "@x.ir"


      If Sheets(2).Cells(7, 4) = Sheets(1).Cells(4, 1) Then
      Dim wb1 As Workbook
      Dim TempFilePath As String
      Dim TempFileName As String
      Dim FileExtStr As String
      Dim OutApp As Object
      Dim OutMail As Object


      With Application
      .ScreenUpdating = False
      .EnableEvents = False
      End With


      Set wb1 = ActiveWorkbook




      TempFilePath = Environ$("temp") & ""
      TempFileName = Replace(wb1.Name, ".xlsm", "")
      FileExtStr = "." & LCase(Right(wb1.Name, Len(wb1.Name) - InStrRev(wb1.Name, ".", , 1)))


      wb1.SaveCopyAs TempFilePath & TempFileName & FileExtStr


      Set OutApp = CreateObject("Outlook.Application")
      Set OutMail = OutApp.CreateItem(0)


      On Error Resume Next
      With OutMail
      .To = Sheets(1).Cells(20, 1)
      .CC = ""
      .BCC = ""
      .Subject = Sheets(1).Cells(21, 2)
      .HTMLBody = "<p align='right'>" & Sheets(1).Cells(22, 2) & "<br> <br>" & Sheets(1).Cells(23, 2) & "<br> <br>" & Sheets(1).Cells(24, 2)
      .Attachments.Add TempFilePath & TempFileName & FileExtStr
      'You can add other files also like this
      '.Attachments.Add ("C:\test.txt")
      .Send 'or use .Display
      End With
      On Error GoTo 0


      'Delete the file
      Kill TempFilePath & TempFileName & FileExtStr


      Set OutMail = Nothing
      Set OutApp = Nothing


      With Application
      .ScreenUpdating = True
      .EnableEvents = True
      End With
      End If


      Namee = ThisWorkbook.Name
      Namee = Replace(ThisWorkbook.Name, ".xlsm", "")
      Workbooks.Open "C:\Users\Programmer\Desktop\for life in call\Forbidden\Leave Request.XLSx"


      'sabte gheyr estelagi
      *****از این خط ایراد میگیرد If Workbooks(Namee).Sheets(2).Cells(7, 4) <> Workbooks(Namee).Sheets(1).Cells(4, 1) Then


      Sabt = 0
      For I = 2 To 9999
      If Sheets(2).Cells(I, 3) <> "" Then
      Sabt = I + 1
      Else
      I = 9999
      End If
      Next I
      'mail
      Workbooks("Leave Request").Sheets(1).Cells(Sabt, 11) = Workbooks(Namee).Sheets(1).Cells(20, 1)
      Workbooks("Leave Request").Sheets(1).Cells(Sabt, 12) = Workbooks(Namee).Sheets(1).Cells(19, 1)

      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 3) = Workbooks(Namee).Sheets(2).Cells(5, 4)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 4) = Workbooks(Namee).Sheets(2).Cells(5, 9)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 5) = Workbooks(Namee).Sheets(2).Cells(9, 5)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 6) = Workbooks(Namee).Sheets(2).Cells(13, 3)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 7) = Workbooks(Namee).Sheets(2).Cells(7, 4)
      If Workbooks(Namee).Sheets(2).Cells(7, 4) = Workbooks(Namee).Sheets(1).Cells(3, 1) Then
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 8) = Workbooks(Namee).Sheets(2).Cells(11, 5)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 9) = Workbooks(Namee).Sheets(2).Cells(11, 7)
      End If
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 10) = Workbooks(Namee).Sheets(1).Cells(15, 1)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 11) = Workbooks(Namee).Sheets(1).Cells(16, 1)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 12) = Workbooks(Namee).Sheets(2).Cells(15, 3)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 13) = Workbooks(Namee).Sheets(2).Cells(17, 4)

      Workbooks(Namee).Sheets(1).Cells(5, 6) = Workbooks(Namee).Sheets(2).Cells(9, 5)
      If Workbooks(Namee).Sheets(2).Cells(13, 3) <> "night" And Workbooks(Namee).Sheets(2).Cells(13, 3) <> "H" Then
      For j = 1 To 50
      Workbooks(Namee).Sheets(1).Cells(7, 6) = "1/" & j & "/1900"
      If Workbooks(Namee).Sheets(1).Cells(10, 6) <= Workbooks(Namee).Sheets(2).Cells(9, 7) Then
      Sabt = 0
      For I = 2 To 9999
      If Sheets(2).Cells(I, 3) <> "" Then
      Sabt = I + 1
      Else
      I = 9999
      End If
      Next I

      'mail
      Workbooks("Leave Request").Sheets(1).Cells(Sabt, 11) = Workbooks(Namee).Sheets(1).Cells(20, 1)
      Workbooks("Leave Request").Sheets(1).Cells(Sabt, 12) = Workbooks(Namee).Sheets(1).Cells(19, 1)

      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 3) = Workbooks(Namee).Sheets(2).Cells(5, 4)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 4) = Workbooks(Namee).Sheets(2).Cells(5, 9)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 5) = Workbooks(Namee).Sheets(1).Cells(10, 6)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 6) = Workbooks(Namee).Sheets(2).Cells(13, 3)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 7) = Workbooks(Namee).Sheets(2).Cells(7, 4)
      If Workbooks(Namee).Sheets(2).Cells(7, 4) = Workbooks(Namee).Sheets(1).Cells(3, 1) Then
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 8) = Workbooks(Namee).Sheets(2).Cells(11, 5)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 9) = Workbooks(Namee).Sheets(2).Cells(11, 7)
      End If
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 10) = Workbooks(Namee).Sheets(1).Cells(15, 1)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 11) = Workbooks(Namee).Sheets(1).Cells(16, 1)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 12) = Workbooks(Namee).Sheets(2).Cells(15, 3)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 13) = Workbooks(Namee).Sheets(2).Cells(17, 4)
      Else
      j = 50
      End If
      Next j
      Else
      For j = 1 To 50
      Workbooks(Namee).Sheets(1).Cells(7, 6) = "1/" & j & "/1900"
      If Workbooks(Namee).Sheets(1).Cells(10, 6) < Workbooks(Namee).Sheets(2).Cells(9, 7) Then
      Sabt = 0
      For I = 2 To 9999
      If Sheets(2).Cells(I, 3) <> "" Then
      Sabt = I + 1
      Else
      I = 9999
      End If
      Next I

      Workbooks("Leave Request").Sheets(1).Cells(Sabt, 11) = Workbooks(Namee).Sheets(1).Cells(20, 1)
      Workbooks("Leave Request").Sheets(1).Cells(Sabt, 12) = Workbooks(Namee).Sheets(1).Cells(19, 1)

      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 3) = Workbooks(Namee).Sheets(2).Cells(5, 4)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 4) = Workbooks(Namee).Sheets(2).Cells(5, 9)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 5) = Workbooks(Namee).Sheets(1).Cells(10, 6)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 6) = Workbooks(Namee).Sheets(2).Cells(13, 3)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 7) = Workbooks(Namee).Sheets(2).Cells(7, 4)
      If Workbooks(Namee).Sheets(2).Cells(7, 4) = Workbooks(Namee).Sheets(1).Cells(3, 1) Then
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 8) = Workbooks(Namee).Sheets(2).Cells(11, 5)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 9) = Workbooks(Namee).Sheets(2).Cells(11, 7)
      End If
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 10) = Workbooks(Namee).Sheets(1).Cells(15, 1)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 11) = Workbooks(Namee).Sheets(1).Cells(16, 1)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 12) = Workbooks(Namee).Sheets(2).Cells(15, 3)
      Workbooks("Leave Request").Sheets(2).Cells(Sabt, 13) = Workbooks(Namee).Sheets(2).Cells(17, 4)
      Else
      j = 50
      End If
      Next j
      End If
      Else
      'sabte estelagi
      Sabt = 0
      For I = 2 To 9999
      If Sheets(3).Cells(I, 4) <> "" Then
      Sabt = I + 1
      Else
      I = 9999
      End If
      Next I

      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 4) = Workbooks(Namee).Sheets(2).Cells(5, 4)
      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 5) = Workbooks(Namee).Sheets(2).Cells(9, 5)
      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 6) = Workbooks(Namee).Sheets(2).Cells(17, 4)



      Workbooks(Namee).Sheets(1).Cells(5, 6) = Workbooks(Namee).Sheets(2).Cells(9, 5)
      If Workbooks(Namee).Sheets(2).Cells(13, 3) <> "night" And Workbooks(Namee).Sheets(2).Cells(13, 3) <> "H" Then
      For j = 1 To 50
      Workbooks(Namee).Sheets(1).Cells(7, 6) = "1/" & j & "/1900"
      If Workbooks(Namee).Sheets(1).Cells(10, 6) <= Workbooks(Namee).Sheets(2).Cells(9, 7) Then
      Sabt = 0
      For I = 2 To 9999
      If Sheets(3).Cells(I, 4) <> "" Then
      Sabt = I + 1
      Else
      I = 9999
      End If
      Next I


      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 4) = Workbooks(Namee).Sheets(2).Cells(5, 4)
      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 5) = Workbooks(Namee).Sheets(1).Cells(10, 6)
      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 6) = Workbooks(Namee).Sheets(2).Cells(17, 4)

      Else
      j = 50
      End If
      Next j
      Else
      For j = 1 To 50
      Workbooks(Namee).Sheets(1).Cells(7, 6) = "1/" & j & "/1900"
      If Workbooks(Namee).Sheets(1).Cells(10, 6) < Workbooks(Namee).Sheets(2).Cells(9, 7) Then
      Sabt = 0
      For I = 2 To 9999
      If Sheets(3).Cells(I, 4) <> "" Then
      Sabt = I + 1
      Else
      I = 9999
      End If
      Next I


      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 4) = Workbooks(Namee).Sheets(2).Cells(5, 4)
      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 5) = Workbooks(Namee).Sheets(1).Cells(10, 6)
      Workbooks("Leave Request").Sheets(3).Cells(Sabt, 6) = Workbooks(Namee).Sheets(2).Cells(17, 4)

      Else
      j = 50
      End If
      Next j
      End If
      End If
      Unload Me
      Workbooks("Leave Request").Save
      Workbooks("Leave Request").Close




      Namee = ThisWorkbook.FullName
      ActiveWorkbook.SaveAs Filename:= _
      "C:\Users\Programmer\Desktop\for life in call" & "" & supervisor & "" & Sheets(1).Cells(18, 1) & " (" & Environ("USERNAME") & " " & Format(Now, "mm-dd-yy HH.mm.ss") & ")- ok" & ".xlsm"

      ThisWorkbook.Saved = True
      ThisWorkbook.ChangeFileAccess xlReadOnly
      Kill (Namee)
      ActiveWorkbook.Close
      End Sub

      کامنت

      چند لحظه..