Page 2 of 3

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Wed Apr 25, 2018 9:58 pm
by March201711
ดู วีดีโอแล้วก็ยังไม่เช้าใจค่ะอาจารย์ ยากจังค่ะ ยังไม่เคยเขียน code vba จริงๆจังๆ ส่วนใหญ่แค่ record marco เท่านี้นเองค่ะ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Wed Apr 25, 2018 10:31 pm
by snasui
:D คงต้องศึกษามาก่อนตามลำดับ อาจจะเริ่มด้วยหนังสือ ส่วนจะเป็นหนังสือเล่มใดคงต้องเข้าไปลองอ่านด้วยตนเอง เล่มไหนอ่านแล้วเข้าใจค่อยซื้อเล่มนั้นครับ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 6:22 am
by March201711
ถ้าไม่เขียน code vba สามารถใช้สูตรได้ไหมคะ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 3:41 pm
by March201711
ลองเขียน code ที่ศึกษามาแล้วใช้ Do unit...loop ค่ะ แต่ก็ไม่แน่ใจว่าได้หรือเปล่าค่ะ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 7:47 pm
by snasui
:D ค่อย ๆ ถามตอบกันไปครับ

Code ที่เขียนมาต้องการจะทำอะไรบ้าง ติดขัดตรงส่วนใดครับ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 8:19 pm
by March201711
ติดตรงถ้าเป็นวันหยุดพิเศษ เช่น วันหยุดยาวๆ อยากให้ดึงข้อมูลจากfile Base_WD sheet WorkingDay เช่นวันที่ 1พค18 เป็นวันแรงงาน จะข้ามวันที่ 01/05/18 ไปเลยจะไม่เห็นวันที่วันนั้น (ดูได้ตรง column a19 ถึง a20 จะไม่มีวันนั้นจะเป็นวันที่02/05/18 แทน อยากให้ดึงข้อมูลตรงชีทนี้ค่ะ อย่างอื่นได้หมดแล้วแต่ติดตรงวันที่ที่หยุดพิเศษค่ะ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 8:25 pm
by snasui
:D นำ Code มาอธิบายประกอบว่าติดตรงไหน

ผมพบว่า Code กับสิ่งสิ่งอธิบายมานี้ไม่ได้เป็นไปในทางเดียวกัน การจะใช้ Code จะต้องเข้าใจและเขียนได้เองบ้างครับ

Code ที่เขียนจะต้องเขียนเพื่อแก้ไขปัญหาที่ถาม ไม่ใช่นำ Code อื่นที่ไม่เกี่ยวข้องหรือทำงานอื่นไม่เกียวกับงานนี้มาถาม

ลองพยายามใหม่ครับ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 8:37 pm
by March201711
คือหนูดูที่อาจารย์ให้คลิปมาดูแล้วลองปรับประยุกต์ใช้ค่ะ ต้องใช้ do unit ...loop เพื่อหาค่าที่มีอยู่ ถ้าเป็นค่าว่างก็ให้วนลูปไปเรื่อยๆจนกว่าจะเจอค่าของวันนี้ค่ะ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 8:45 pm
by snasui
:D ใช้การ Loop ไม่ตรงกับตำแหน่งที่ควร Loop ครับ

Code: Select all

k = 2
Do Until Workbooks("Base_WD.xlsx").Worksheets("WorkingDay").Cells(k, 7).Value <> ""
  k = k + 1
Loop
กรุณาตอบว่า Code นี้ว่าเป็นการ Loop ข้อมูลในเซลล์ใด ให้ระบุตำแหน่งเซลล์ เช่น A1, A2, Z10 สังเกตตรงไหนว่าเป็นเซลล์นั้นครับ :?:

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 9:16 pm
by March201711
k = 2
Do Until Workbooks("Base_WD.xlsx").Worksheets("WorkingDay").Cells(k, 7).Value <> ""
k = k + 1
Loop

cell ที่ 2 column ที่ 7 ค่ะ ถ้าเป็นค่าว่างก้อให้วนไปเรื่อยๆจนเจอ cell ที่ไม่เป็นค่าว่างค่ะ คือ วันที่ 26/4/18ค่ะ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 9:24 pm
by snasui
:D เมื่อเจอแล้วให้นำค่านั้นหักออกด้วย 1 เพื่อให้เป็นตำแหน่งเซลล์ก่อนหน้า จะนำค่าในเซลล์ไปใช้ต่อครับ

Code: Select all

Dim l as Long
k = 2
Do Until Workbooks("Base_WD.xlsx").Worksheets("WorkingDay").Cells(k, 7).Value <> ""
   k = k + 1
Loop
l = Workbooks("Base_WD.xlsx").Worksheets("WorkingDay").Cells(k-1, 1).Value2
จากนั้นนำค่า l ไปใช้ต่อครับ ช่วยโพสต์ Code ให้แสดงเป็น Code จะได้แตกต่างจากข้อความทั่วไป สะดวกแก่การอ่านครับ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 9:33 pm
by March201711
ขอบคุณค่ะ จะลองำปปรับใช้ดู ได้ไม่ได้จะแจ้งให้ทราบนะคะอาจารย์ :D

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 10:08 pm
by March201711
ลองทำแล้วไม่ได้น่ะค่ะอาจารย์

Code: Select all

 
Dim l As Long
k = 2
Do Until Workbooks("Base_WD.xlsx").Worksheets("WorkingDay").Cells(k, 7).Value <> ""
k = k + 1
Loop
l = Workbooks("Base_WD.xlsx").Worksheets("WorkingDay").Cells(k - 1, 1).Value2
    
    Dim ie As Object, s As String, i As Integer
    Select Case Weekday(Date, vbMonday)
        Case 7
            i = -2
        Case 1
            i = -3
        Case Else
            i = -1
    End Select
    s = Format(DateAdd("d", i, Date), "ddmmyyyy")
    
    Set ie = CreateObject("Internetexplorer.Application")
    ie.Visible = True
    ie.navigate "https://www.bot.or.th/thai/statistics/financialmarkets/exchangerate/exchangerate_EN_PDF/ER_PDF_" & l & ".PDF"
    
    MsgBox " finished "
    
End Sub
 

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Thu Apr 26, 2018 10:48 pm
by snasui
:D ช่วยอธิบายลักษณะที่ว่า "ไม่ได้" ว่าเป็นอย่างไรมาด้วยครับ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Fri Apr 27, 2018 7:55 am
by March201711
ติดตรง เปิด BrowerBOT แล้วหน้าต่างไม่มี exchange rate ค่ะ

Code: Select all

     ie.navigate "https://www.bot.or.th/thai/statistics/financialmarkets/exchangerate/exchangerate_EN_PDF/ER_PDF_" & l & ".PDF"

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Fri Apr 27, 2018 7:12 pm
by snasui
:D ตัวอย่างการปรับ Code ครับ

Code: Select all

ie.navigate "https://www.bot.or.th/thai/statistics/financialmarkets/exchangerate/exchangerate_EN_PDF/ER_PDF_" & Format(l, "ddmmyyyy") & ".PDF"

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Fri Apr 27, 2018 9:01 pm
by March201711
อาจารย์คะ ทำไมพอใช้ code vba แล้ว พอdave file ทำให้file เพิ่มมากขึ้น จาก้ดิม 2Mb พอใช้ code vba หรือmarco fileเพิ่มขึ้นเป็น 7Mb เลยค่ะ :flw:

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Fri Apr 27, 2018 9:05 pm
by snasui
:D เพิ่ม Code แค่ไม่กี่บรรทัดย่อมไม่ทำให้ไฟล์ใหญ่ ยกเว้นว่าเขียน Code ให้บันทึกข้อมูลลงในไฟล์หรือสร้าง Object จำนวนมากจึงจะทำให้ไฟล์มีขนาดใหญ่ขึ้นมากครับ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Fri Apr 27, 2018 9:22 pm
by March201711
แล้วต้องแก้ปรับอย่างไรบ้างคะ

Re: ทำไม click code vba run แล้วไม่เปิดหน้า Browser BOT

Posted: Fri Apr 27, 2018 9:24 pm
by snasui
:D จะบอกได้ว่าปรับตรงไหน อย่างไรก็ต้องทราบว่า Code ทำงานอะไรอย่างไรเสียก่อนครับ