Note: The other languages of the website are Google-translated. Back to English
English English

วิธีแบ่งข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ใน Excel

สมมติว่าคุณมีแผ่นงานที่มีข้อมูลจำนวนมากและตอนนี้คุณต้องแบ่งข้อมูลออกเป็นหลายแผ่นตาม ชื่อ - นามสกุล คอลัมน์ (ดูภาพหน้าจอต่อไปนี้) และชื่อจะถูกป้อนแบบสุ่ม บางทีคุณอาจเรียงลำดับก่อนจากนั้นคัดลอกและวางทีละแผ่นในแผ่นงานใหม่อื่น ๆ แต่ต้องใช้ความอดทนในการคัดลอกและวางซ้ำ ๆ วันนี้ฉันจะพูดคุยเกี่ยวกับเทคนิคด่วนในการแก้ปัญหานี้

doc แยกข้อมูลตามคอลัมน์ 1

แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วยรหัส VBA

แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วย Kutools for Excel


แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วยรหัส VBA

หากคุณต้องการแยกข้อมูลตามค่าคอลัมน์อย่างรวดเร็วและอัตโนมัติโค้ด VBA ต่อไปนี้เป็นตัวเลือกที่ดี กรุณาทำตามนี้:

1. กด ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในหน้าต่างโมดูล

Sub Splitdatabycol()
'updateby Extendoffice
Dim lr As Long
Dim ws As Worksheet
Dim vcol, i As Integer
Dim icol As Long
Dim myarr As Variant
Dim title As String
Dim titlerow As Integer
Dim xTRg As Range
Dim xVRg As Range
Dim xWSTRg As Worksheet
Dim xWS As Worksheet
On Error Resume Next
Set xTRg = Application.InputBox("Please select the header rows:", "Kutools for Excel", "", Type:=8)
If TypeName(xTRg) = "Nothing" Then Exit Sub
Set xVRg = Application.InputBox("Please select the column you want to split data based on:", "Kutools for Excel", "", Type:=8)
If TypeName(xVRg) = "Nothing" Then Exit Sub
vcol = xVRg.Column
Set ws = xTRg.Worksheet
lr = ws.Cells(ws.Rows.Count, vcol).End(xlUp).Row
title = xTRg.AddressLocal
titlerow = xTRg.Cells(1).Row
icol = ws.Columns.Count
ws.Cells(1, icol) = "Unique"
Application.DisplayAlerts = False
If Not Evaluate("=ISREF('xTRgWs_Sheet!A1')") Then
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
Else
Sheets("xTRgWs_Sheet").Delete
Sheets.Add(after:=Worksheets(Worksheets.Count)).Name = "xTRgWs_Sheet"
End If
Set xWSTRg = Sheets("xTRgWs_Sheet")
xTRg.Copy
xWSTRg.Paste Destination:=xWSTRg.Range("A1")
ws.Activate
For i = (titlerow + xTRg.Rows.Count) To lr
On Error Resume Next
If ws.Cells(i, vcol) <> "" And Application.WorksheetFunction.Match(ws.Cells(i, vcol), ws.Columns(icol), 0) = 0 Then
ws.Cells(ws.Rows.Count, icol).End(xlUp).Offset(1) = ws.Cells(i, vcol)
End If
Next
myarr = Application.WorksheetFunction.Transpose(ws.Columns(icol).SpecialCells(xlCellTypeConstants))
ws.Columns(icol).Clear
For i = 2 To UBound(myarr)
ws.Range(title).AutoFilter field:=vcol, Criteria1:=myarr(i) & ""
If Not Evaluate("=ISREF('" & myarr(i) & "'!A1)") Then
Set xWS = Sheets.Add(after:=Worksheets(Worksheets.Count))
xWS.Name = myarr(i) & ""
Else
xWS.Move after:=Worksheets(Worksheets.Count)
End If
xWSTRg.Range(title).Copy
xWS.Paste Destination:=xWS.Range("A1")
ws.Range("A" & (titlerow + xTRg.Rows.Count) & ":A" & lr).EntireRow.Copy xWS.Range("A" & (titlerow + xTRg.Rows.Count))
Sheets(myarr(i) & "").Columns.AutoFit
Next
xWSTRg.Delete
ws.AutoFilterMode = False
ws.Activate
Application.DisplayAlerts = True
End Sub

3. จากนั้นกด F5 คีย์เพื่อเรียกใช้รหัสและกล่องพร้อมต์จะปรากฏขึ้นเพื่อเตือนให้คุณเลือกแถวส่วนหัวดูภาพหน้าจอ:

doc แยกข้อมูลตามคอลัมน์ 7

4. จากนั้นคลิก OK และในกล่องพรอมต์ที่สองโปรดเลือกข้อมูลคอลัมน์ที่คุณต้องการแยกตามดูภาพหน้าจอ:

doc แยกข้อมูลตามคอลัมน์ 8

5. จากนั้นคลิก OKและข้อมูลทั้งหมดในแผ่นงานที่ใช้งานอยู่จะถูกแบ่งออกเป็นหลายแผ่นงานตามค่าของคอลัมน์ และแผ่นงานที่แยกจะถูกตั้งชื่อด้วยชื่อเซลล์ที่แยก ดูภาพหน้าจอ:

doc แยกข้อมูลตามคอลัมน์ 2

หมายเหตุ: แผ่นงานแยกจะวางไว้ที่ส่วนท้ายของสมุดงานที่มีแผ่นงานหลักอยู่


แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วย Kutools for Excel

ในฐานะผู้เริ่มต้นใช้งาน Excel รหัส VBA แบบยาวนี้ค่อนข้างยากสำหรับเราและพวกเราส่วนใหญ่ยังไม่รู้วิธีแก้ไขโค้ดตามความต้องการ ฉันจะแนะนำเครื่องมือมัลติฟังก์ชั่นให้คุณ -Kutools สำหรับ Excelมัน แยกข้อมูล ยูทิลิตี้ไม่เพียง แต่ช่วยให้คุณแบ่งข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ได้ แต่ยังสามารถแบ่งข้อมูลตามจำนวนแถวได้อีกด้วย

หมายเหตุที่จะใช้สิ่งนี้ แยกข้อมูลประการแรกคุณควรดาวน์โหลดไฟล์ Kutools สำหรับ Excelแล้วใช้คุณสมบัตินี้อย่างรวดเร็วและง่ายดาย

หลังจากการติดตั้ง Kutools สำหรับ Excelโปรดทำตามนี้:

1. เลือกช่วงของข้อมูลที่คุณต้องการแยก

2. คลิก Kutools พลัส > แผ่นงาน > แยกข้อมูลดูภาพหน้าจอ:

doc แยกข้อมูลตามคอลัมน์ 3

3. ใน แยกข้อมูลออกเป็นหลายแผ่นงาน คุณต้อง:

1). เลือก คอลัมน์เฉพาะ ตัวเลือกใน แยกตาม และเลือกค่าคอลัมน์ที่คุณต้องการแบ่งข้อมูลตามในรายการดรอปดาวน์ (หากข้อมูลของคุณมีส่วนหัวและคุณต้องการแทรกลงในแผ่นงานใหม่แต่ละแผ่นโปรดตรวจสอบ ข้อมูลของฉันมีส่วนหัว ตัวเลือก.)

2). จากนั้นคุณสามารถระบุชื่อแผ่นงานแยกภายใต้ ชื่อแผ่นงานใหม่ ระบุกฎชื่อเวิร์กชีตจากไฟล์ กฎระเบียบ รายการแบบเลื่อนลงคุณสามารถเพิ่มไฟล์ อุปสรรค or วิภัตติ สำหรับชื่อแผ่นงานด้วย

3). คลิก OK ปุ่ม. ดูภาพหน้าจอ:

doc แยกข้อมูลตามคอลัมน์ 4

4. ตอนนี้ข้อมูลถูกแบ่งออกเป็นหลายแผ่นในสมุดงานใหม่

doc แยกข้อมูลตามคอลัมน์ 5

คลิกเพื่อดาวน์โหลด Kutools สำหรับ Excel และทดลองใช้ฟรีทันที!


แยกข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ด้วย Kutools for Excel

Kutools สำหรับ Excel มีเครื่องมือ Excel ที่มีประโยชน์มากกว่า 300 รายการ ทดลองใช้ฟรีโดยไม่มีข้อ จำกัด ใน 30 วัน ดาวน์โหลดทดลองใช้ฟรีทันที!


บทความที่เกี่ยวข้อง:

จะแบ่งข้อมูลออกเป็นหลายแผ่นตามจำนวนแถวได้อย่างไร?


เครื่องมือเพิ่มประสิทธิภาพการทำงานในสำนักงานที่ดีที่สุด

Kutools สำหรับ Excel ช่วยแก้ปัญหาส่วนใหญ่ของคุณและเพิ่มผลผลิตของคุณได้ถึง 80%

  • นำมาใช้ใหม่: ใส่อย่างรวดเร็ว สูตรที่ซับซ้อนแผนภูมิ และสิ่งที่คุณเคยใช้มาก่อน เข้ารหัสเซลล์ ด้วยรหัสผ่าน; สร้างรายชื่อผู้รับจดหมาย และส่งอีเมล ...
  • ซุปเปอร์ฟอร์มูล่าบาร์ (แก้ไขข้อความและสูตรหลายบรรทัดได้อย่างง่ายดาย); การอ่านเค้าโครง (อ่านและแก้ไขเซลล์จำนวนมากได้อย่างง่ายดาย); วางลงในช่วงที่กรองแล้ว...
  • ผสานเซลล์ / แถว / คอลัมน์ โดยไม่สูญเสียข้อมูล แยกเนื้อหาของเซลล์ รวมแถว / คอลัมน์ที่ซ้ำกัน... ป้องกันเซลล์ซ้ำ; เปรียบเทียบช่วง...
  • เลือกซ้ำหรือไม่ซ้ำ แถว; เลือกแถวว่าง (เซลล์ทั้งหมดว่างเปล่า); Super Find และ Fuzzy Find ในสมุดงานจำนวนมาก สุ่มเลือก ...
  • สำเนาถูกต้อง หลายเซลล์โดยไม่เปลี่ยนการอ้างอิงสูตร สร้างการอ้างอิงอัตโนมัติ ถึงหลายแผ่น ใส่สัญลักษณ์แสดงหัวข้อย่อย, กล่องกาเครื่องหมายและอื่น ๆ ...
  • แยกข้อความ, เพิ่มข้อความ, ลบตามตำแหน่ง, ลบ Space; สร้างและพิมพ์ผลรวมย่อยของเพจ แปลงระหว่างเนื้อหาของเซลล์และความคิดเห็น...
  • ซุปเปอร์ฟิลเตอร์ (บันทึกและใช้โครงร่างตัวกรองกับแผ่นงานอื่น ๆ ); การเรียงลำดับขั้นสูง ตามเดือน / สัปดาห์ / วันความถี่และอื่น ๆ ตัวกรองพิเศษ โดยตัวหนาตัวเอียง ...
  • รวมสมุดงานและแผ่นงาน; ผสานตารางตามคอลัมน์สำคัญ แยกข้อมูลออกเป็นหลายแผ่น; Batch แปลง xls, xlsx และ PDF...
  • คุณสมบัติที่ทรงพลังมากกว่า 300 รายการ. รองรับ Office / Excel 2007-2019 และ 365 รองรับทุกภาษา ใช้งานง่ายในองค์กรหรือองค์กรของคุณ ทดลองใช้ฟรี 30 วันเต็ม รับประกันคืนเงิน 60 วัน
kte แท็บ 201905

แท็บ Office นำอินเทอร์เฟซแบบแท็บมาที่ Office และทำให้งานของคุณง่ายขึ้นมาก

  • เปิดใช้งานการแก้ไขและอ่านแบบแท็บใน Word, Excel, PowerPoint, ผู้จัดพิมพ์, Access, Visio และโครงการ
  • เปิดและสร้างเอกสารหลายรายการในแท็บใหม่ของหน้าต่างเดียวกันแทนที่จะเป็นในหน้าต่างใหม่
  • เพิ่มผลผลิตของคุณ 50% และลดการคลิกเมาส์หลายร้อยครั้งให้คุณทุกวัน!
ด้านล่าง officetab
จัดเรียงความคิดเห็นโดย
ความคิดเห็น (297)
ยังไม่มีการให้คะแนน เป็นคนแรกที่ให้คะแนน!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
แบ่งข้อมูลออกเป็นหลายแผ่นตามคอลัมน์ที่มีรหัส VBA แสดงข้อผิดพลาดบางอย่าง โปรดลองแก้ไขและอัปเดตแบบเดียวกัน หากคุณให้ตัวอย่างไฟล์ excel จะเป็นประโยชน์อย่างยิ่ง
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ขอบคุณสำหรับรหัสที่ใช้งานได้สำหรับฉัน! ฉันกำลังพยายามหารหัสที่แยกแผ่นงานหลักหนึ่งแผ่นออกเป็นหลายแผ่นตามวันที่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
นั่นช่างเหลือเชื่อ! ขั้นตอนนี้จะใช้เวลากว่าหนึ่งชั่วโมงในการทำ แต่ก็เสร็จสิ้นภายใน 30 วินาที อันนี้ฉันจะเก็บไว้สำหรับห้องสมุด VBA ของฉัน ขอขอบคุณ!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ฉันมีเซลล์ 30000 เซลล์ในเวิร์กชีตของฉันและจำเป็นต้องแบ่งเซลล์ออกเป็นหลายเดือน มีรหัสที่ฉันสามารถใช้ทำได้เร็วขึ้นหรือไม่ ฉันมี 8 คอลัมน์และวันที่คือคอลัมน์ B ฉันได้ลองเล่นกับโค้ดด้านบนที่ให้มาแต่ล้มเหลวครั้งใหญ่ คุณช่วยฉันด้วยสิ่งนี้ได้ไหม ขอบคุณล่วงหน้า
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันได้รับข้อผิดพลาดดังต่อไปนี้: ข้อผิดพลาดรันไทม์ '6' ล้นหลังจากการดีบัก แสดงบรรทัด For i = 2 To Ir แถว excel ของฉันมีมากกว่า 500,000 มีวิธีแก้ไขหรือไม่ ขอบคุณมากสำหรับรหัส ขอแสดงความนับถือ Lok
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ขอบคุณมากสำหรับรหัส ฉันได้รับข้อผิดพลาดดังต่อไปนี้: ข้อผิดพลาดรันไทม์ '6' ล้นที่บรรทัด For i = 2 To Ir วิธีแก้ไขใดๆ สำหรับสิ่งนี้ ขอขอบคุณ
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันได้รับข้อผิดพลาดเมื่อกด F5 - GoTo Box เพื่อขอข้อมูลอ้างอิง??
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
กระบวนการ VBA ทำงานได้อย่างสมบูรณ์ ขอบคุณมากสำหรับการแบ่งปันความเชี่ยวชาญของคุณและช่วยฉันประหยัดเวลาได้มาก!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
รหัส VBA ทำงานได้อย่างสมบูรณ์ ดูเหมือนจะไม่อัปเดตแผ่นงานเนื่องจากมีการเปลี่ยนแปลงใน Sheet1 กรุณาช่วย
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ขอบคุณสำหรับรหัสที่ใช้งานได้สำหรับฉัน! ฉันมีเพียงสองคำถาม/ข้อสังเกต 1 ข้อมูลที่คัดลอกไม่รวมเลย์เอาต์ของไฟล์ต้นฉบับ เป็นไปได้ไหมที่จะคัดลอกข้อมูลเป็นตารางด้วยตัวกรองอัตโนมัติ 2 ข้อมูลที่คัดลอกดูเหมือนจะไม่ถูกผูกไว้กับช่วงชื่อ เป็นไปได้ไหมที่จะปรับโค้ดสำหรับช่วงหรือชื่อตารางเฉพาะ? การปรับเหล่านี้จะมีประโยชน์มาก ขอแสดงความนับถือ Pieter
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ทำงานเหมือนมีเสน่ห์! ขอขอบคุณ.
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ใช้งานได้อย่างมีเสน่ห์... ขอบคุณสำหรับโค้ดพรีเมียม... :lol:
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ขอบคุณมาก วิธีนี้ใช้ได้ผลดี อย่างไรก็ตาม จะเกิดอะไรขึ้นหากฉันต้องการจัดเรียงข้อมูลภายในแต่ละแท็บอีกครั้ง (โดยใช้คอลัมน์อับเรณู) โดยพื้นฐานแล้ว VBA นี้แบ่งออกเป็นแท็บต่างๆ แต่ฉันอาจต้องการแยกย่อยเพิ่มเติม .. เป็นไปได้ไหม
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี Jonathan ความเห็นเก่า ฉันรู้ แต่อาจมีประโยชน์สำหรับผู้อื่นในอนาคต: ฉันจำเป็นต้องทำเช่นนี้ แต่ไม่สามารถหาวิธีง่ายๆ กับ VBA ได้ อย่างไรก็ตาม ฉันพบว่าถ้าคุณสร้างคอลัมน์ใหม่ในสเปรดชีตของคุณเป็นการผสมผสานของ 2 ดังนั้นเช่น =A1&" "&A2 สิ่งนี้จะให้ 1 เซลล์พร้อมข้อมูลทั้งสองชุด จากนั้นคุณสามารถเรียกใช้โมดูลด้านบนและใช้งานได้ดี! แก้ไข - ข้อมูลในคอลัมน์ต้องสั้นกว่า 30 อักขระ มิฉะนั้น ข้อมูลจะไม่ถูกคัดลอกข้าม (แสดงเป็นข้อผิดพลาดในโมดูล) และคุณจะได้รับแผ่นงานเปล่าอยู่ตรงกลางของชีตใหม่
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เจ๋ง.. นี่มันน่าทึ่งมาก ฉันกำลังดิ้นรนกับปัญหานี้เป็นเวลานานและรหัสนี้เข้ามาเพื่อการพักผ่อน ขอบคุณสำหรับการแบ่งปัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
อัศจรรย์. ขอบคุณสำหรับการโพสต์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
โค้ดทำงานเหมือนมีเสน่ห์สำหรับข้อมูลที่มีขนาดเล็กกว่า (น้อยกว่า 1200 แถว) ฉันพยายามใช้กับเวิร์กชีตที่ใหญ่กว่าด้วย (17000 แถว) และมันเพิ่งพังหลังจากแบ่งออกเป็น 10-12 แผ่น ดังนั้นเราจึงพยายามแบ่งข้อมูลต้นฉบับออกเป็น 3 เวิร์กบุ๊กที่แตกต่างกัน และยังคงปิดเราลง เรามี Windows 7 และคอมพิวเตอร์ของเราก็ไม่ช้าเช่นกัน คุณแนะนำแถวข้อมูลที่จำกัดเพื่อใช้รหัสนี้อย่างปลอดภัยหรือไม่ ข้อเสนอแนะใด ๆ ที่จะได้รับการชื่นชม
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
โค้ดทำงานเหมือนมีเสน่ห์สำหรับข้อมูลที่มีขนาดเล็กกว่า (น้อยกว่า 1200 แถว) ฉันพยายามใช้กับเวิร์กชีตที่ใหญ่กว่าด้วย (17000 แถว) และมันเพิ่งพังหลังจากแบ่งออกเป็น 10-12 แผ่น ดังนั้นเราจึงพยายามแบ่งข้อมูลต้นฉบับออกเป็น 3 เวิร์กบุ๊กที่แตกต่างกัน และยังคงปิดเราลง เรามี Windows 7 และคอมพิวเตอร์ของเราก็ไม่ช้าเช่นกัน คุณแนะนำแถวข้อมูลที่จำกัดเพื่อใช้รหัสนี้อย่างปลอดภัยหรือไม่ ข้อเสนอแนะใด ๆ ที่จะได้รับการชื่นชม สิ่งที่ฉันไม่แน่ใจคือ จำนวนแถวสูงสุดที่แมโครสามารถรองรับได้คือเท่าใด ฉันสามารถเล่นกับมันได้... มันอยู่ระหว่าง 20k ถึง 40k![/quote]
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
เผชิญปัญหาเดียวกัน รหัสใช้งานได้กับแผ่นงานที่มีแถวข้อมูลน้อยกว่า แต่สำหรับข้อมูลขนาดใหญ่จะแสดงข้อผิดพลาดเนื่องจาก "Excel ไม่สามารถทำงานนี้ให้เสร็จสิ้นด้วยทรัพยากรที่มีอยู่ เลือกข้อมูลน้อยลงหรือปิดแอปพลิเคชันอื่น" (ไม่มีแอปพลิเคชันอื่นทำงานพร้อมกัน) รหัส ทำงานเหมือนมีเสน่ห์สำหรับข้อมูลที่เล็กกว่า (น้อยกว่า 1200 แถว) ฉันพยายามใช้กับเวิร์กชีตที่ใหญ่กว่าด้วย (17000 แถว) และมันเพิ่งพังหลังจากแบ่งออกเป็น 10-12 แผ่น ดังนั้นเราจึงพยายามแบ่งข้อมูลต้นฉบับออกเป็น 3 เวิร์กบุ๊กที่แตกต่างกัน และยังคงปิดเราลง เรามี Windows 7 และคอมพิวเตอร์ของเราก็ไม่ช้าเช่นกัน คุณแนะนำแถวข้อมูลที่จำกัดเพื่อใช้รหัสนี้อย่างปลอดภัยหรือไม่ ข้อเสนอแนะใด ๆ ที่จะได้รับการชื่นชม
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
คุณคือฮีโร่ตลอดกาลของฉัน! ฉันได้ล่าเพื่อสิ่งนี้เป็นเวลาหลายเดือนโดยไม่มีโชค ฉันต้องทำรายงานแยกย่อยรายสัปดาห์/รายเดือนเป็น 147 แผ่นงานและพวกเขาจะไม่ได้รับ kutools ในบันทึกนั้น.. ฉันต้องเรียนรู้การเขียนโปรแกรมจริงๆ :( แต่ขอบคุณ!
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ฉันมีแผ่นงานที่มีระเบียน 65000 รายการและมี 8 กรณีที่แตกต่างกัน ดังนั้นโดยพื้นฐานแล้วควรสร้างแผ่นงานที่แตกต่างกัน 80 แผ่น ฉันพยายามเรียกใช้รหัสนี้ แต่มันพ่น Runtime Error 6 Overflow รหัสนี้สามารถปรับแต่งเพื่อแก้ปัญหาของฉันได้หรือไม่? กรุณาความช่วยเหลือของคุณจะได้รับการชื่นชมอย่างมาก
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
[quote]สวัสดี ฉันมีแผ่นงานที่มีบันทึก 65000 รายการและมี 8 กรณีที่แตกต่างกัน ดังนั้นโดยพื้นฐานแล้วควรสร้างแผ่นงานที่แตกต่างกัน 80 แผ่น ฉันพยายามเรียกใช้รหัสนี้ แต่มันพ่น Runtime Error 6 Overflow รหัสนี้สามารถปรับแต่งเพื่อแก้ปัญหาของฉันได้หรือไม่? กรุณาความช่วยเหลือของคุณจะได้รับการชื่นชมอย่างมากโดย เอซ[/quote] ลองเปลี่ยน Dim vcol, i As Integer to Dim vcol, i As Long
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
สวัสดี ฉันพยายามเปลี่ยน DIM vcol เป็น LOng และใช้งานได้ดี แต่จู่ๆ ก็เกิดข้อผิดพลาดขึ้น มีหน่วยความจำไม่เพียงพอที่จะดำเนินการนี้ให้เสร็จสิ้น ลองใช้ข้อมูลน้อยลงหรือปิดแอปพลิเคชันอื่น แม้ว่าฉันจะไม่มีแอปพลิเคชันอื่นเปิดอยู่ ฉันมีมากกว่า 100 k แถวและประมาณ ขนาดไฟล์ 16 MB. ความช่วยเหลือใด ๆ ที่จะได้รับการชื่นชม ขอบคุณมุสตาฟา
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
โค้ดที่ยอดเยี่ยม - ทำงานได้อย่างสมบูรณ์ (หากคุณเปลี่ยนตัวแปรเป็นตัวแปรที่สเปรดชีตของคุณต้องการ)
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันมีชีตที่มีจำนวนตัวแปรของแถว หนึ่งในคอลัมน์คือวันที่ตั้งแต่ปี 2010 เป็นต้นไป คอลัมน์อื่นๆ เป็นชื่อกองทุนพร้อมข้อมูล NAV ของแต่ละกองทุนเทียบกับวันที่ ดังนั้นฉันจึงไม่ต้องการแบ่งคอลัมน์ออกเป็นชีตต่างๆ ฉันต้องการแยก FUND NAME แต่ละอันออกเป็นชีตของตัวเองด้วยข้อมูล NAV ต่อวันที่สิ้นเดือน ไม่ใช่วันที่รายวัน สิ่งนี้สามารถทำได้หรือเป็นไปไม่ได้?
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ฉันมีแผ่นงานที่ฉันใช้และกำลังพยายามค้นหารหัส vba ที่จะรวมชื่อบัญชีใหม่และคัดลอกแถว paticular ไปยังสมุดงานและแผ่นงานใหม่ที่มีชื่อเดียวกัน คุณช่วยได้ไหม
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ยอดเยี่ยม! รหัส VBA ใช้งานได้ ขอบคุณ! ฉันต้องการให้เวิร์กชีตเอาท์พุตเหล่านี้อยู่ในไฟล์ excel แต่ละไฟล์แทนที่จะเป็นเวิร์กชีต และมีข้อผิดพลาดเมื่อฉันแยกออกเป็นหลายเวิร์กชีต
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
Starscor และ Tim หากคุณต้องการแบ่งแผ่นงานของไฟล์ออกเป็นหลาย ๆ ไฟล์โดยใช้ชื่อแถวนั้น มีโค้ดมาโครขนาดเล็กในหน้าเว็บเดียวกันที่ทำสิ่งนี้ เพียงค้นหา "แยกเวิร์กบุ๊กเพื่อแยกไฟล์ Excel" คุณ จะพบมัน เพิ่มโค้ดของตัวอย่างนั้นที่ส่วนท้ายของโค้ดนี้เพื่อลบ end sub และ sub ที่ซ้ำกัน และคุณจะได้ไฟล์หนึ่งไฟล์สำหรับแต่ละไฟล์
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ใครสามารถช่วยฉันจัดเรียงคอลัมน์ในแผ่นงานต่าง ๆ ในสมุดงานเดียวกันพร้อมกันและลบรายการที่ซ้ำกันในแผ่นงานต่าง ๆ เนื่องจากฉันมีแผ่นงานประมาณ 65 แผ่นในสมุดงานเดียวกัน
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
มันน่าตื่นเต้นมาก! ขอขอบคุณ. ฉันได้รับการมองหานี้สำหรับบางเวลา
ความคิดเห็นนี้ถูกย่อให้เล็กสุดโดยผู้ดำเนินรายการบนเว็บไซต์
ยอดเยี่ยม - ขอบคุณสำหรับการแบ่งปันสิ่งนี้ แม้แต่เผยแพร่ไฮไลท์/รูปแบบไปยังเวิร์กชีตใหม่!
มีความคิดเห็นยังไม่มีการโพสต์ที่นี่
โหลดเพิ่มเติม
แสดงความคิดเห็นของคุณ
โพสต์ในฐานะแขก
×
ให้คะแนนโพสต์นี้:
0   ตัวอักษร
สถานที่แนะนำ