Tôi muốn tách một ô có dữ liệu thành các ô khác dựa trên dữ liệu trong ô ban đầu. Dữ liệu từ ô ban đầu trông như thế này (tất cả nội dung trong một ô):
Field95-4,Field97-4,Field98-0,Field100-2,Field103-0,Field105-3,Field107-4,Field109-4,Field110-2,Field111-0,Field112-0,Field113-192,Field114-87,Field115-0,Field116-0,Field117-60
Nó nên được phân chia bằng cách sử dụng "," như một dấu phân cách. Tôi phát hiện ra rằng tôi có thể làm điều đó với một kịch bản:
Private Sub CommandButton1_Click()
Dim X As Variant
X = Split(Range("A1").Value, ",")
Range("A1").Resize(UBound(X) - LBound(X) + 1).Value = Application.Transpose(X)
End Sub
Sau đó, kết quả là như thế này:
Field95-4
Field97-4
Field98-0
Field100-2
Field103-0
Field105-3
Field107-4
Field109-4
Field110-2
Field111-0
Field112-0
Field113-192
Field114-87
Field115-0
Field116-0
Field117-60
Mỗi giá trị là một mã thông báo duy nhất chứa hai phần được chia cho dấu gạch nối; nội dung ô ban đầu và giá trị thay thế của nó. Tập lệnh nên tìm một ô chứa phần đầu tiên của mã thông báo, phần 'trường số'.
Ví dụ: Có một ô chứa văn bản 'Field95' và một ô có văn bản 'Field97', v.v. Sau đó, tôi muốn thay thế phần đầu tiên của mã thông báo bằng phần thứ hai. Vì vậy, đối với 'Field95-4', một ô có nội dung 'Field95' nên được tìm thấy và thay thế bằng văn bản '4'. Nên thay thế ô có nội dung 'Field97' bằng '4'. Vân vân.
Đây là một tệp excel tôi đã tải lên, vì vậy bạn có thể thấy câu hỏi của tôi là gì. Nó chứa dữ liệu. liên kết
Tôi biết rất nhiều điều để hỏi, nhưng chúng tôi đã cố gắng rất nhiều và tôi không thể làm cho nó hoạt động được.
Tôi đang mong chờ câu trả lời của bạn. Cảm ơn trước!