:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน Excel
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
chaloemsak
Member
Member
Posts: 8
Joined: Sun Jan 13, 2019 2:30 am

ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

#1

Post by chaloemsak »

Option Explicit
Dim NumCate As Integer
Dim NumN() As Integer
Dim NumCapa() As Integer
Dim NumFixedCost() As Integer
Dim NumVarCost() As Double
Dim NumLCost() As Double
Dim NumSpeed() As Double
Dim NumCust() As Integer
Dim NumX() As Integer
Dim NumY() As Integer
Dim NumNeed() As Integer
Dim NumTimeStart() As Integer
Dim NumTimeFinis() As Integer
Dim NumTimeTra() As Integer
Dim NumFine() As Integer
Dim i As Integer
Dim j As Integer

Public Sub RdINP(Fn As String).............................................ขึ้น debug บรรทัดนี้ครับ
Dim FolderName As String
FolderName = "C:\VRP\" & Fn
Dim wbk As Workbook
Set wbk = Workbooks.Open(FolderName)

NumCate = wbk.Worksheets("Sheet1").Range("B1")
ReDim NumN(1 To NumCate)
ReDim NumCapa(1 To NumCate)
ReDim NumFixedCost(1 To NumCate)
ReDim NumVarCost(1 To NumCate)
ReDim NumLCost(1 To NumCate)
ReDim NumSpeed(1 To NumCate)
For i = 1 To NumCate
NumN(i) = wbk.Worksheets("Sheet1").Range("B6").Offset(i, 0)
NumCapa(i) = wbk.Worksheets("Sheet1").Range("C6").Offset(i, 0)
NumFixedCost(i) = wbk.Worksheets("Sheet1").Range("D6").Offset(i, 0)
NumVarCost(i) = wbk.Worksheets("Sheet1").Range("E6").Offset(i, 0)
NumLCost(i) = wbk.Worksheets("Sheet1").Range("F6").Offset(i, 0)
NumSpeed(i) = wbk.Worksheets("Sheet1").Range("G6").Offset(i, 0)
Next i


NumCust = wbk.Worksheets("Sheet1").Range("B2")
ReDim NumX(1 To NumCust)
ReDim NumY(1 To NumCust)
ReDim NumNeed(1 To NumCust)
ReDim NumTimeStart(1 To NumCust)
ReDim NumTimeFinis(1 To NumCust)
ReDim NumTimeTra(1 To NumCust)
ReDim NumFine(1 To NumCust)
For i = 1 To NumCust
NumX(i) = wbk.Worksheets("Sheet1").Range("J6").Offset(i, 0)
NumY(i) = wbk.Worksheets("Sheet1").Range("K6").Offset(i, 0)
NumNeed(i) = wbk.Worksheets("Sheet1").Range("L6").Offset(i, 0)
NumTimeStart(i) = wbk.Worksheets("Sheet1").Range("M6").Offset(i, 0)
NumTimeFinis(i) = wbk.Worksheets("Sheet1").Range("N6").Offset(i, 0)
NumTimeTra(i) = wbk.Worksheets("Sheet1").Range("O6").Offset(i, 0)
NumFine(i) = wbk.Worksheets("Sheet1").Range("P6").Offset(i, 0)
Next i


MsgBox "Done"

End Sub
User avatar
snasui
Site Admin
Site Admin
Posts: 31253
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

#2

Post by snasui »

:D กรุณาแนบไฟล์ที่มี Code นี้มาด้วย จะได้สะดวกในการตรวจสอบ

Code ในบรรทัดที่ Error นั้นไม่ได้อยู่เดี่ยว ๆ เนื่องจากมีการรับตัวแปรเข้ามาทำงานต่อ จะต้องมี Code อื่นมาเรียกใช้อีกที

สำหรับการโพสต์ Code จะต้องโพสต์ให้แสดงเป็น Code แทนการแสดงความความปกติ เพื่อสะดวกในการอ่านและให้แยกกันได้สะดวกกับข้อความปกติ ดูตัวอย่างได้จากกฎการใช้บอร์ดข้อ 5 ด้านบนครับ :roll:
chaloemsak
Member
Member
Posts: 8
Joined: Sun Jan 13, 2019 2:30 am

Re: ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

#3

Post by chaloemsak »

ช่วยตรวจสอบให้ผมหน่อยครับ

Code: Select all

Option Explicit
Private Sub ReadInput_Click()
Call RdINP("problem 1.xlsx")
End Sub

Code: Select all

Option Explicit
Dim NumCate As Integer 
Dim NumN() As Integer
Dim NumCapa() As Integer 
Dim NumFixedCost() As Integer 
Dim NumVarCost() As Double
Dim NumLCost() As Double
Dim NumSpeed() As Double 
Dim NumCust() As Integer 
Dim NumX() As Integer 
Dim NumY() As Integer 
Dim NumNeed() As Integer 
Dim NumTimeStart() As Integer 
Dim NumTimeFinis() As Integer 
Dim NumTimeTra() As Integer 
Dim NumFine() As Integer 
Dim i As Integer
Dim j As Integer
Public Sub RdINP(Fn As String)
Dim FolderName As String
FolderName = "C:\VRP\" & Fn
Dim wbk As Workbook
Set wbk = Workbooks.Open(FolderName)

NumCate = wbk.Worksheets("Sheet1").Range("B1")
    ReDim NumN(1 To NumCate)
    ReDim NumCapa(1 To NumCate)
    ReDim NumFixedCost(1 To NumCate)
    ReDim NumVarCost(1 To NumCate)
    ReDim NumLCost(1 To NumCate)
    ReDim NumSpeed(1 To NumCate)
        For i = 1 To NumCate
            NumN(i) = wbk.Worksheets("Sheet1").Range("B6").Offset(i, 0)
            NumCapa(i) = wbk.Worksheets("Sheet1").Range("C6").Offset(i, 0)
            NumFixedCost(i) = wbk.Worksheets("Sheet1").Range("D6").Offset(i, 0)
            NumVarCost(i) = wbk.Worksheets("Sheet1").Range("E6").Offset(i, 0)
            NumLCost(i) = wbk.Worksheets("Sheet1").Range("F6").Offset(i, 0)
            NumSpeed(i) = wbk.Worksheets("Sheet1").Range("G6").Offset(i, 0)
        Next i
NumCust = wbk.Worksheets("Sheet1").Range("B2")
    ReDim NumX(1 To NumCust)
    ReDim NumY(1 To NumCust)
    ReDim NumNeed(1 To NumCust)
    ReDim NumTimeStart(1 To NumCust)
    ReDim NumTimeFinis(1 To NumCust)
    ReDim NumTimeTra(1 To NumCust)
    ReDim NumFine(1 To NumCust)
        For i = 1 To NumCust
            NumX(i) = wbk.Worksheets("Sheet1").Range("J6").Offset(i, 0)
            NumY(i) = wbk.Worksheets("Sheet1").Range("K6").Offset(i, 0)
            NumNeed(i) = wbk.Worksheets("Sheet1").Range("L6").Offset(i, 0)
            NumTimeStart(i) = wbk.Worksheets("Sheet1").Range("M6").Offset(i, 0)
            NumTimeFinis(i) = wbk.Worksheets("Sheet1").Range("N6").Offset(i, 0)
            NumTimeTra(i) = wbk.Worksheets("Sheet1").Range("O6").Offset(i, 0)
            NumFine(i) = wbk.Worksheets("Sheet1").Range("P6").Offset(i, 0)
        Next i
MsgBox "Done"

End Sub
User avatar
snasui
Site Admin
Site Admin
Posts: 31253
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

#4

Post by snasui »

:D แนบไฟล์ที่เกี่ยวข้องมาด้วยครับ
snasui wrote: Sun Jan 13, 2019 6:52 am กรุณาแนบไฟล์ที่มี Code นี้มาด้วย จะได้สะดวกในการตรวจสอบ
chaloemsak
Member
Member
Posts: 8
Joined: Sun Jan 13, 2019 2:30 am

Re: ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

#5

Post by chaloemsak »

นี่ครับมี 2 ไฟล์
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31253
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

#6

Post by snasui »

:D เปลี่ยนการประกาศตัวแปรจาก Dim NumCust() As Integer เป็น Dim NumCust As Integer ครับ
chaloemsak
Member
Member
Posts: 8
Joined: Sun Jan 13, 2019 2:30 am

Re: ขึ้น compile error : Type mismatch เเก้ไขอย่างไรครับ

#7

Post by chaloemsak »

ได้เเล้วครับ ขอบคุณมากๆนะครับที่ช่วยตรวจให้ผม
Post Reply