Page 1 of 1
Excel macro : Pivot Table เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
Posted: Fri Sep 13, 2019 3:24 pm
by wisitsakbenz
เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
ขอบคุณครับ
Re: Excel macro : Pivot Table เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
Posted: Fri Sep 13, 2019 5:01 pm
by parakorn
ไม่ค่อยเก่ง VBA เท่าไหร่ครับ ลองแบบนี้ดูนะครับ
Code: Select all
Sub pivot_table()
Dim pt_cache As PivotCache
Dim pt_table As PivotTable
Set pt_cache = ActiveWorkbook.PivotCaches.Add( _
SourceType:=xlDatabase, _
SourceData:=Worksheets("DATA SNH").UsedRange)
Worksheets("สรุป SNH").UsedRange.Clear 'Add this line
Set pt_table = pt_cache.CreatePivotTable( _
TableDestination:=Worksheets("สรุป SNH").Range("A1"), _
TableName:="PivotTable1")
With pt_table
.PivotFields("ประกันไทย /ต่างประเทศ").Orientation = xlPageField
.PivotFields("เดือน").Orientation = xlPageField
.PivotFields("ปี").Orientation = xlPageField
.PivotFields("แผนกที่ส่งเอกสาร").Orientation = xlRowField
.PivotFields("ประกันไทย /ต่างประเทศ").Orientation = xlDataField
.PivotFields("ประกันไทย /ต่างประเทศ").Orientation = xlDataField
End With
With ActiveSheet.PivotTables("PivotTable1").DataPivotField
.Orientation = xlColumnField
.Position = 1
End With
End Sub
หรือรอท่านอื่น อาจจะเขียนรวม ใน With แรกได้ครับ

Re: Excel macro : Pivot Table เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
Posted: Fri Sep 13, 2019 9:14 pm
by wisitsakbenz
ไม่ได้ครับอาจารย์ ลอง run macro แล้ว error ครับ
รบกวนด้วยครับ ขอบคุณครับ
Re: Excel macro : Pivot Table เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
Posted: Fri Sep 13, 2019 10:57 pm
by puriwutpokin
ปรับเป็น
Code: Select all
Sub pivot_table()
Dim pt_cache As PivotCache
Dim pt_table As PivotTable
Set pt_cache = ActiveWorkbook.PivotCaches.Add( _
SourceType:=xlDatabase, _
SourceData:=Worksheets("DATA SNH").UsedRange)
Worksheets("สรุป SNH").UsedRange.Clear 'Add this line
Set pt_table = pt_cache.CreatePivotTable( _
TableDestination:=Worksheets("สรุป SNH").Range("A1"), _
TableName:="PivotTable1")
With pt_table
.PivotFields("ประกันไทย /ต่างประเทศ").Orientation = xlPageField
.PivotFields("เดือน").Orientation = xlPageField
.PivotFields("ปี").Orientation = xlPageField
.PivotFields("แผนกที่ส่งเอกสาร").Orientation = xlRowField
.PivotFields("ประกันไทย /ต่างประเทศ").Orientation = xlDataField
.PivotFields("ประกันไทย /ต่างประเทศ").Orientation = xlDataField
End With
With Sheets("สรุป SNH").PivotTables("PivotTable1").DataPivotField
.Orientation = xlColumnField
.Position = 1
End With
End Sub
Re: Excel macro : Pivot Table เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
Posted: Sat Sep 14, 2019 9:49 am
by wisitsakbenz
เรียน อาจารย์ครับ
ผมลองเอาโค้ดไปวางแล้ว run ดู ขึ้น error "Subscript out of range" ตามไฟล์แนบครับ
ขอบคุณครับ
Re: Excel macro : Pivot Table เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
Posted: Sat Sep 14, 2019 10:11 am
by puriwutpokin
เวลาคัดลอกโค้ด ควรเอาคำที่มีภาษาไทยมาด้วยครับ ลองดูตามไฟล์แนบครับ
วิธีเอาโค้ดที่มีภาษาไทยปนอยู่ดูจากหัวเว็บนี้ได้เลยครับ โดยเปลี่ยน ภาษาเครื่องเป็นไทย
ก่อนคัดลอกครับ ไม่มีภาษาไทยในโค้ดก็รันไม่ได้ครับ เพราะโค้ดมีภาษาไทยอยู่ด้วยครับ
ลองศึกษาเรื่อง VBA มาก่อนด้วยครับจะได้ตอบได้ถูกและรวดเร็วไม่ต้องมาทำเรื่องเดิมซ้ำครับ

Re: Excel macro : Pivot Table เวลา run macro แล้วค่า Sum Values จะอยู่ตรง Rows อยากให้อยู่ตรง column ต้องทำอย่างไรครับ
Posted: Sat Sep 14, 2019 10:45 am
by wisitsakbenz
ได้แล้วครับ ขอบคุณครับอาจารย์ puriwutpokin