Page 1 of 1

สอบถามการเลือกsheet vba ที่เป็นเดือน

Posted: Tue Feb 20, 2018 9:39 am
by March201711
อยากให้ vba เลือก sheet ที่เป้น เดือนต้องแก้อย่างไรคะ
Sheets(Array("aaa_"&Format$(date+1,"mm", "Detail_"&Format$(date+1, "mmm")).Select
Sheets("Detail_&Format$(date+1, "mmm").Activate
Sheets(Array("aaa_"&Format$(date+1,"mm", "Detail_"&Format$(date+1, "mmm")).Copy
ActiveWorkbook.SaveAs Filename:="C:\Users\Desktop\Save_" & Format$(Date + 1, "mmm'yy") & ".xlsx" _
FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False

ไม่ทราบว่าเขียนอย่างนี้แล้ว vba ไม่รันให้ เกิด debug ขึ้นค่ะ

Re: สอบถามการเลือกsheet vba ที่เป็นเดือน

Posted: Tue Feb 20, 2018 11:46 am
by logic
โพสต์โค้ดให้เป็นไปตามกฎข้อ 5 ของบอร์ดด้านบนหน้านี้ด้วยครับ

Re: สอบถามการเลือกsheet vba ที่เป็นเดือน

Posted: Tue Feb 20, 2018 2:04 pm
by March201711

Code: Select all

' aaa_mth Macro
'

'
    Sheets(Array("aaa_02", "Detail_Feb")).Select
    Sheets("Detail_Feb").Activate
    Sheets(Array("aaa_02", "Detail_Feb")).Copy
    ActiveWorkbook.SaveAs Filename:="C:\Users\Desktop\Save_feb18.xlsx", _
        FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Application.Left = -297.5
    Application.Top = 485.5
    ActiveWindow.Close
    Sheets("Detail_Feb").Select
    Sheets.Add After:=ActiveSheet
    Sheets.Add After:=ActiveSheet
    Windows("ER_XLS_19022018.XLS").Activate
    Application.Left = 140.5
    Application.Top = 172.75
    Range("A4:C4").Select
    Application.Left = -77
    Application.Top = 259.75
    ActiveWindow.Close
 
End Sub

Code: Select all

    Sheets(Array("aaa_"&Format$(date+1,"mm", "Detail_"&Format$(date+1, "mmm")).Select
    Sheets("Detail_&Format$(date+1, "mmm").Activate
    Sheets(Array("aaa_"&Format$(date+1,"mm", "Detail_"&Format$(date+1, "mmm")).Copy
     ActiveWorkbook.SaveAs Filename:="C:\Users\Desktop\Save_" & Format$(Date + 1, "mmm'yy") & ".xlsx" _
        FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
อยากให้ code vba เลือกเดือนปัจจุบันให้แล้ว save เป็นเดือนปัจจุบันค่ะ

Re: สอบถามการเลือกsheet vba ที่เป็นเดือน

Posted: Tue Feb 20, 2018 8:45 pm
by snasui
:D ตัวอย่าง Code ตามด้านล่างครับ

Code: Select all

'...Other code
Dim mn As String, mnt As String, a() As Variant
Dim i As Integer, wks As Worksheet
mn = Application.Text(Now, "[$- ]mm")
mnt = Application.Text(Now, "[$- ]mmm")
For Each wks In Worksheets
    If Right(wks.Name, 2) = mn Or Right(wks.Name, 3) = mnt Then
        ReDim Preserve a(i)
        a(i) = wks.Name
        i = i + 1
    End If
Next wks
'    Sheets(Array("aaa_02", "Detail_Feb")).Select
'    Sheets("Detail_Feb").Activate
'    Sheets(Array("aaa_02", "Detail_Feb")).Copy
Sheets(a).Copy
ActiveWorkbook.SaveAs Filename:="C:\Users\kemanajd\Desktop\Save_feb18.xlsx", _
    FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
'...Other code

Re: สอบถามการเลือกsheet vba ที่เป็นเดือน

Posted: Wed Feb 21, 2018 11:25 am
by March201711
ทำได้แล้วค่ะอาจารย์ ขอบคุณมากค่ะ :thup: