: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

Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไร

ฟอรัมถาม-ตอบปัญหาการใช้งานสูตรและฟังก์ชัน 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. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
godman
Silver
Silver
Posts: 643
Joined: Mon Jul 05, 2010 6:18 pm

Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไร

#1

Post by godman »

สวัสดีครับ
ผมได้ทำ workbook ที่เชื่อมต่อ กับ ไฟล์งานอื่น แล้วใช้ conncetion ดึงตารางมาแสดง และใช้โค้ดที่ filter จากเซลล์ใดเซล์หนึ่งแล้วให้มันไปขยับ Pivot table ที่อยู่ในชี้ตเดียวกัน แต่ผมทำได้แล้ว แต่มีปัญหาตอนที่เปิดไฟล์เท่านั้น คือตอนเปิดไฟล์มันขึ้น error ดังไฟล์แนบ แต่ไฟล์ใช้งานได้ตามปกติครับ ผมอยากทราบว่า
1 จะเปลี่ยนโค้ดอย่างไรดี
2 ไม่อยากให้ POP UP ของ VB นี้แสดงได้ไหมครับ ต้องปรับตรงใหนครับ

Code: Select all

Option Explicit

Const RegionRangeName As String = "RegionFilterRange"
Const PivotTableName As String = "PivotTable3"
Const PivotFieldName As String = "Doc_Classification"

Public Sub UpdatePivotFieldFromRange(RangeName As String, FieldName As String, _
PivotTableName As String)

    Dim rng As Range
    Set rng = Application.Range(RangeName)
    
    Dim pt As pivotTable
    Dim Sheet As Worksheet
    For Each Sheet In Application.ActiveWorkbook.Worksheets
        On Error Resume Next
        Set pt = Sheet.PivotTables(PivotTableName)
    Next
    If pt Is Nothing Then GoTo Ex
    
    On Error GoTo Ex
    
    pt.ManualUpdate = True
    Application.EnableEvents = False
    Application.ScreenUpdating = False
    
    Dim Field As PivotField
    Set Field = pt.PivotFields(FieldName)
    Field.ClearAllFilters
    Field.EnableItemSelection = False
    SelectPivotItem Field, rng.Text
    pt.RefreshTable
    
Ex:
    pt.ManualUpdate = False
    Application.EnableEvents = True
    Application.ScreenUpdating = True
    
End Sub

Public Sub SelectPivotItem(Field As PivotField, ItemName As String)
    Dim Item As PivotItem
    For Each Item In Field.PivotItems
        Item.Visible = (Item.Caption = ItemName)
    Next
End Sub

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
    If Not Intersect(Target, Application.Range(RegionRangeName)) _
        Is Nothing Then
            UpdatePivotFieldFromRange _
            RegionRangeName, PivotFieldName, PivotTableName
    End If
End Sub



You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไ

#2

Post by snasui »

:D Error มันฟ้องชัดอยู่แล้วครับวา Error ตรงไหน ถ้าไม่อยากทราบก็ใช้ On Error Resume Next ไปดักไว้ก่อนบรรทัดที่ Error ครับ ถ้าอยากทราบก็หาต่อว่า RegionRangeName คือเซลล์ใด ช่วงเซลล์ใด มีอยู่จริงหรือไม่
godman
Silver
Silver
Posts: 643
Joined: Mon Jul 05, 2010 6:18 pm

Re: Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไ

#3

Post by godman »

ขอบคุณครับ แก้ไขแล้วใช้ได้ตอนเปิดไฟล์ไม่มีปัญหาอะไร แต่พอกด refresh table ที่คอนเนคมา ยังขึ้น error pop up ประโยคเดิมครับ เช่น
คำว่า Runtie eror Intersect of object Golbal fail
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไ

#4

Post by snasui »

snasui wrote:ถ้าอยากทราบก็หาต่อว่า RegionRangeName คือเซลล์ใด ช่วงเซลล์ใด มีอยู่จริงหรือไม่
:aru: ตามนี้เลยครับ

นอกจากนี้การไม่เห็นไฟล์จะเดายากครับ
godman
Silver
Silver
Posts: 643
Joined: Mon Jul 05, 2010 6:18 pm

Re: Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไ

#5

Post by godman »

ผมทำได้แล้วครับ ดีใจมาก ผมเพียงลงคำว่า Workbook_sheetchange ให้เหลือเพียงคำว่า workbook_change มันก็หาย error เลยครับ สุดยอด ขอบคุณมากครับ
User avatar
snasui
Site Admin
Site Admin
Posts: 31255
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 2019
Contact:

Re: Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไ

#6

Post by snasui »

:lol: อยากทราบว่า ถ้าลบ Event workbook_change ทิ้งไปมันจะ Error หรือไม่ครับ :?:
godman
Silver
Silver
Posts: 643
Joined: Mon Jul 05, 2010 6:18 pm

Re: Error pivot table ที่ vb แบบนี้เกิดจากอะไร จะแก้ไขอย่างไ

#7

Post by godman »

จริงแล้วผมเปลี่ยนโค้ดใหม่แล้วครับ ไม่โอเค เลย ผมเลยเข้าเวปต่างประเทศอื่นและขอใช้โค้ดเขา ตอนนี้ไม่มีปัญหาแล้วครับ แนวทางของ vb developer แต่ละคนในการเขียนโค้ดก็แตกต่างกันในสถานการณ์เดียวกัน ผมได้ของคนใหม่แล้วครับ จากเวปนี้ http://blog.contextures.com
Post Reply