snasui.com ยินดีต้อนรับ ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ ระบุ Version ของ Excel
loop For i = 1 To 31 มันจะมีบางไฟล์ ที่เมื่อวน loop i ไปจะไม่พบ ไฟล์นั้นเพราะ เป็นวันหยุด ไฟล์จะมีเพียงวันจันทร์ถึงศุกร์
อยากสร้างเงื่อนไขที่จะข้าม i นั้นไปได้อย่างไรครับ
Option Explicit
Public Sub am()
Dim a As Single, k As Single, i As Single, j As Single
Dim b As Variant, c As Variant, d As Variant
a = 2014
For i = 1 To 12
If i = i < 10 Then
b = "0" & i
For j = 1 To 31
If j = i < 10 Then
c = "0" & i
Workbooks.Open "C:\Users\somkiat\Desktop\ccc\set-history_EOD_" & a & "-" & b & "-" & c & ""
Else
Workbooks.Open "C:\Users\somkiat\Desktop\ccc\set-history_EOD_" & a & "-" & b & "-" & j & ""
End If
Next j
Else
For k = 1 To 31
If k = i < 10 Then
d = "0" & i
Workbooks.Open "C:\Users\somkiat\Desktop\ccc\set-history_EOD_" & a & "-" & i & "-" & d & ""
Else
Workbooks.Open "C:\Users\somkiat\Desktop\ccc\set-history_EOD_" & a & "-" & i & "-" & k & ""
End If
Next k
End If
Next i
End Sub
Dim FN As String, Y As Integer, M As Integer, D As Integer
Y = 2014
For M = 1 To 12
For D = 1 To Day(DateSerial(Y, M + 1, 0))
FN = "C:\Users\somkiat\Desktop\ccc\set-history_EOD_" & Y & "-" & Right("0" & M, 2) & "-" & Right("0" & D, 2) & ".xlsx"
If Len(Dir(FN)) > 0 Then Workbooks.Open FN
Next
Next