Giúp code kết hợp dữ liệu từ file txt vào exel (1 người xem)

  • Thread starter Thread starter buonviem
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

buonviem

Thành viên mới
Tham gia
29/7/16
Bài viết
37
Được thích
0
Chào mọi người!
Mình có một vấn đề thế này,Mình có một file .txt trong đó có chứa dữ liệu.nó có từng cột một...Mình muốn chuyển dữ liệu này vào file exel có mẫu sẵn cũng từng cột từng hàng vậy...Bạn nào có cách nào có thể giúp mình không...Làm sao để gán dữ liệu từ file TXT vào Exell được ạ.
 

File đính kèm

LtSIDPA.png

Bạn xài font chữ gì?
Mà nhìn nó lộn xộn thế này thì import kiểu j, hic.
Dữ liệu phải có format chuẩn từ trên xuống dưới giống nhau mới được.
 
Upvote 0
Bạn xài font chữ gì?
Mà nhìn nó lộn xộn thế này thì import kiểu j, hic.
Dữ liệu phải có format chuẩn từ trên xuống dưới giống nhau mới được.

- Không rõ là font chữ gì nhưng bảng mã TCVN3 (ABC). Dùng UniKey Toolkit đổi sang Unicode là được.
- Format chuẩn: Ở Notepad >> Format >> bỏ check dòng "Word Wrap" là thấy "chuẩn" ngay.
txt.jpg
 
Upvote 0
QpyG20E.png


Uhm cậu, mà bên tay phải, nó vẫn nằm lung tung thế này. Cái dấu | nó cũng nằm búa xua.
 
Upvote 0
Của mình đây nè bạn...Ai có thể giúp mình với được không ạ
0oUl9mr.png
 
Upvote 0
Của mình đây nè bạn...Ai có thể giúp mình với được không ạ
0oUl9mr.png
Chuyển từ text sang excel mình nghĩ bạn nên làm tay, copy 1 cái là xong. Còn để cho giống file excel thì phải coi lại vì trong file text ko có số tờ bản đồ
 
Upvote 0
Chào mọi người!
Mình có một vấn đề thế này,Mình có một file .txt trong đó có chứa dữ liệu.nó có từng cột một...Mình muốn chuyển dữ liệu này vào file exel có mẫu sẵn cũng từng cột từng hàng vậy...Bạn nào có cách nào có thể giúp mình không...Làm sao để gán dữ liệu từ file TXT vào Exell được ạ.

Bạn thử file đính kèm nhé. Click nút "ImportText" rồi chọn tới file text của bạn >> Open.
 

File đính kèm

Upvote 0
Chào mọi người!
Mình có một vấn đề thế này,Mình có một file .txt trong đó có chứa dữ liệu.nó có từng cột một...Mình muốn chuyển dữ liệu này vào file exel có mẫu sẵn cũng từng cột từng hàng vậy...Bạn nào có cách nào có thể giúp mình không...Làm sao để gán dữ liệu từ file TXT vào Exell được ạ.
Bạn thử với Code:
PHP:
Sub ImportTextToExcel()
    Dim fso As Object, FilesToOpen, TextSource As Object, TotalLines, Res()
    Dim ItemsOfLine, TextItem, Des As Range, Delimiter
    Dim k As Long, x As Byte, Cols As Integer, LineNum As Long
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set Des = [A1]
    Delimiter = "|"
    FilesToOpen = Application.GetOpenFilename("Text Files (*.txt), *.txt", , , , True)
    If Not IsArray(FilesToOpen) Then Exit Sub
    For x = LBound(FilesToOpen) To UBound(FilesToOpen)
        k = 0
        Set TextSource = fso.OpenTextFile(FilesToOpen(x), 1, , -2)
        TotalLines = Split(TextSource.ReadAll, vbCrLf)
        ReDim Res(1 To 1 + UBound(TotalLines), 1 To 1)
        For LineNum = LBound(TotalLines) To UBound(TotalLines)
            ItemsOfLine = TotalLines(LineNum)
            TextItem = Split(ItemsOfLine, Delimiter)
            If UBound(Res, 2) < UBound(TextItem) + 1 Then
                ReDim Preserve Res(1 To 1 + UBound(TotalLines), 1 To UBound(TextItem) + 1)
            End If
            If ItemsOfLine <> String(Len(ItemsOfLine), vbTab) Then
                k = k + 1
                For Cols = LBound(TextItem) To UBound(TextItem)
                    Res(k, Cols + 1) = TextItem(Cols)
                Next
            End If
        Next
        Des.Resize(k, UBound(Res, 2)) = Res
        Set Des = Des.Offset(k)
    Next
    Rows("1:1").EntireRow.Delete
    Rows("2:2").EntireRow.Delete
End Sub
 
Upvote 0
Chuyển từ text sang excel mình nghĩ bạn nên làm tay, copy 1 cái là xong. Còn để cho giống file excel thì phải coi lại vì trong file text ko có số tờ bản đồ
Cảm ơn bạn !
Vì mỗi file txt là 1 tờ bản đồ ví dụ "dc4" tờ txt mình xuất lên đó là đc gọi tờ số 4 đấy bạn.Nếu bạn có cách nào làm giúp mình với.Hoặc có thể k cần số tờ cũng đc.Bạn có thể giúp mình được không ạ
 
Upvote 0
Bạn thử với Code:
PHP:
Sub ImportTextToExcel()
    Dim fso As Object, FilesToOpen, TextSource As Object, TotalLines, Res()
    Dim ItemsOfLine, TextItem, Des As Range, Delimiter
    Dim k As Long, x As Byte, Cols As Integer, LineNum As Long
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set Des = [A1]
    Delimiter = "|"
    FilesToOpen = Application.GetOpenFilename("Text Files (*.txt), *.txt", , , , True)
    If Not IsArray(FilesToOpen) Then Exit Sub
    For x = LBound(FilesToOpen) To UBound(FilesToOpen)
        k = 0
        Set TextSource = fso.OpenTextFile(FilesToOpen(x), 1, , -2)
        TotalLines = Split(TextSource.ReadAll, vbCrLf)
        ReDim Res(1 To 1 + UBound(TotalLines), 1 To 1)
        For LineNum = LBound(TotalLines) To UBound(TotalLines)
            ItemsOfLine = TotalLines(LineNum)
            TextItem = Split(ItemsOfLine, Delimiter)
            If UBound(Res, 2) < UBound(TextItem) + 1 Then
                ReDim Preserve Res(1 To 1 + UBound(TotalLines), 1 To UBound(TextItem) + 1)
            End If
            If ItemsOfLine <> String(Len(ItemsOfLine), vbTab) Then
                k = k + 1
                For Cols = LBound(TextItem) To UBound(TextItem)
                    Res(k, Cols + 1) = TextItem(Cols)
                Next
            End If
        Next
        Des.Resize(k, UBound(Res, 2)) = Res
        Set Des = Des.Offset(k)
    Next
    Rows("1:1").EntireRow.Delete
    Rows("2:2").EntireRow.Delete
End Sub
code này bỏ vào đâu vậy bạn mình không biết về lập trình lắm ạ :(.
À được rồi bạn ơi.Mình bỏ vào macrros nhưng khi mở file txt lên nó ra y nội dung như trong file txt chứ k phải ra như nội dung "các cột" của file exel mình gửi kèm theo đó ạ
 
Lần chỉnh sửa cuối:
Upvote 0
Cảm ơn bạn !
Vì mỗi file txt là 1 tờ bản đồ ví dụ "dc4" tờ txt mình xuất lên đó là đc gọi tờ số 4 đấy bạn.Nếu bạn có cách nào làm giúp mình với.Hoặc có thể k cần số tờ cũng đc.Bạn có thể giúp mình được không ạ
làm tay với text vào excel là bạn chỉ copy paste vào excel sau đó dùng Text to Column để tách ra các cột, đồng thời chền thêm 1 cột cho tờ bản đồ. Còn sao cho khớp với file excel thì mình thấy chỉ lấy đc vài cột đầu thui chứ lấy làm sao hết được. Bạn nên nêu cột số bao nhiêu trong text sẽ là cột nào trong excel thì mng sẽ dễ làm và đỡ phải so sanh hơn.
 
Upvote 0
làm tay với text vào excel là bạn chỉ copy paste vào excel sau đó dùng Text to Column để tách ra các cột, đồng thời chền thêm 1 cột cho tờ bản đồ. Còn sao cho khớp với file excel thì mình thấy chỉ lấy đc vài cột đầu thui chứ lấy làm sao hết được. Bạn nên nêu cột số bao nhiêu trong text sẽ là cột nào trong excel thì mng sẽ dễ làm và đỡ phải so sanh hơn.
Vậy mất thời gian nên mình mới tìm cách khác có thể nhanh hơn.Nếu file txt khó quá,mình có thể thay thế nó bằng file Exel và gán vào exel vậy dễ hơn không bạn.Để mình gửi 2 file exel 1 file dữ liệu và 1 file mẫu...Bạn có lệnh nào có thể gán nó vào cho nhanh k...Vì mình có rất nhiều file muốn gán 1 lần vào như vậy cho nhanh đó bạn
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom