Заримдаа өгөгдлийн шинжилгээнд та Excel ажлын хуудасны агуулгыг тодорхой баганын дагуу олон Excel ажлын дэвтэрт хуваах шаардлагатай болж магадгүй юм. Одоо энэ бичлэгт бид танд үүнийг хэрхэн хурдан авах 2 аргыг заах болно.
Олон хэрэглэгчид өгөгдлийн асар том эгнээ агуулсан Excel-ийн ажлын хуудсыг тодорхой баган дээр үндэслэн Excel-ийн олон ажлын дэвтэр болгон хуваах шаардлагатай байдаг. Жишээлбэл, миний жишээ Excel-ийн ажлын хуудас энд байна. Би энэ хуудасны өгөгдлийг "Нэг лицензийн үнэ (US $)" баганын үндсэн дээр олон ажлын дэвтэрт хуваахыг хүсч байна.

Ерөнхийдөө та өгөгдлийг гараар шүүх, хуулахын тулд дараах 1-р аргыг ашиглах хандлагатай болно. Гэхдээ шүүлтүүрийн сонголт маш олон байвал энэ нь нэлээд уйтгартай, тэнэг байх болно. Тиймээс энд VBA ашигладаг 2-р арга болох илүү тохь тухтай аргыг бас харуулав. Одоо тэдгээрийг нарийвчлан авахын тулд уншина уу.
Арга 1: Шүүлтүүрийн дараа Excel-ийн ажлын номыг салгахын тулд агуулгыг хуулах
- Эхлээд тодорхой баганад өөрийн жишээн дээр байгаа "C1 BXNUMX" нүдийг сонгоно уу.
- Дараа нь "Өгөгдөл" таб руу очоод "Шүүлтүүр" товчийг дарна уу.
- Дараа нь шүүлтүүрийн сонголтын жагсаалтыг харуулахын тулд баганын толгой дээрх "доош сум" товчийг дарна уу.
- Одоо "(Бүгдийг сонгох)" сонголтыг цуцална уу.
- Үүний дараа та миний жишээн дээрх "29.95" гэх мэт нэг шүүлтүүр сонголтыг сонгоод "OK" дээр дарна уу.
- Б баганад "29.95" гэсэн утгатай өгөгдөл л үлдэх болно.
- Дараа нь шүүсэн өгөгдлийг хуулж, шинэ Excel-ийн ажлын дэвтэрт буулгана уу.
- Дараа нь Excel-ийн ажлын номыг салгахын тулд бусад өгөгдлийг хуваахын тулд ижил аргыг ашиглана уу.
Арга 2: VBA-ээр дамжуулан Excel-ийн олон ажлын дэвтэрт хуваах агуулгыг багцлах
- Эхний ээлжинд тодорхой ажлын хуудсыг нээсэн эсэхийг шалгаарай.
- Дараа нь VBA редакторыг “VBA кодыг Excel програм дээрээ хэрхэн ажиллуулах вэ".
- Дараа нь дараахь кодыг “ThisWorkbook” төсөлд оруулна уу.
Sub SplitSheetDataIntoMultipleWorkbooksBasedOnSpecificColumn()
Dim objWorksheet As Excel.Worksheet
Dim nLastRow, nRow, nNextRow As Integer
Dim strColumnValue As String
Dim objDictionary As Object
Dim varColumnValues As Variant
Dim varColumnValue As Variant
Dim objExcelWorkbook As Excel.Workbook
Dim objSheet As Excel.Worksheet
Set objWorksheet = ActiveSheet
nLastRow = objWorksheet.Range("A" & objWorksheet.Rows.Count).End(xlUp).Row
Set objDictionary = CreateObject("Scripting.Dictionary")
For nRow = 2 To nLastRow
'Get the specific Column
'Here my instance is "B" column
'You can change it to your case
strColumnValue = objWorksheet.Range("B" & nRow).Value
If objDictionary.Exists(strColumnValue) = False Then
objDictionary.Add strColumnValue, 1
End If
Next
varColumnValues = objDictionary.Keys
For i = LBound(varColumnValues) To UBound(varColumnValues)
varColumnValue = varColumnValues(i)
'Create a new Excel workbook
Set objExcelWorkbook = Excel.Application.Workbooks.Add
Set objSheet = objExcelWorkbook.Sheets(1)
objSheet.Name = objWorksheet.Name
objWorksheet.Rows(1).EntireRow.Copy
objSheet.Activate
objSheet.Range("A1").Select
objSheet.Paste
For nRow = 2 To nLastRow
If CStr(objWorksheet.Range("B" & nRow).Value) = CStr(varColumnValue) Then
'Copy data with the same column "B" value to new workbook
objWorksheet.Rows(nRow).EntireRow.Copy
nNextRow = objSheet.Range("A" & objWorksheet.Rows.Count).End(xlUp).Row + 1
objSheet.Range("A" & nNextRow).Select
objSheet.Paste
objSheet.Columns("A:B").AutoFit
End If
Next
Next
End Sub
- Үүний дараа багажны самбар дээрх "Ажиллуулах" дүрс дээр дарна уу эсвэл "F5" товчийг дарна уу.
- Макро дуусахад Excel-ийн тусдаа ажлын номыг эх сурвалж Excel-ийн ажлын хуудаснаас хуваах өгөгдлөөр үүсгэх болно.
- Ажлын ном тус бүр дараахь дэлгэцийн агшин шиг харагдах болно.
харьцуулалт
| Давуу тал | Сул тал | |
| Арга 1 | 1. Excel-ийн бүх хэрэглэгчдэд ашиглахад хялбар | Хэт олон шүүлтүүр сонголт байгаа бол асуудалтай байна |
| 2. Шүүлтүүрийн сонголт цөөн байвал хурдан | ||
| Арга 2 | Шүүлтүүрийн сонголтоос үл хамааран 1-р аргаас хамаагүй илүү үр дүнтэй байдаг | VBA-ийн шинэ тоглогчдын хувьд ажиллахад жаахан хэцүү байдаг |
Excel-ийн өгөгдөл алдахаас урьдчилан сэргийлэх
MS Excel нь улам бүр боловсронгуй болж, улам боловсронгуй болж байгаа ч гэсэн хор хөнөөлтэй гуравдагч этгээдийн нэмэлт нэмэлтүүд эсвэл хүний алдаа гэх мэт янз бүрийн хүчин зүйлсийн улмаас үе үе осолдох хандлагатай хэвээр байна. Excel-ийн сүйрэл нь шууд хүргэж болзошгүй тул Excel-ийн авлига, Excel-ийн өгөгдлийг алдахгүйн тулд Excel файлуудаа байнга нөөцлөх хэрэгтэй. Үгүй бол та Excel засах хэрэгслийг ашиглах хэрэгтэй DataNumen Excel Repair эвдэрсэн Excel файлуудыг засах.
Зохиогчийн танилцуулга:
Ширли Жан бол мэдээлэл сэргээх мэргэжилтэн юм DataNumen, Үүнд мэдээлэл сэргээх технологиор дэлхийд тэргүүлэгч, Inc. SQL Server засвар програм хангамжийн бүтээгдэхүүнийг засах хэтийн төлөв. Дэлгэрэнгүй мэдээллийг авна уу WWW.datanumen.com






