Tôi đã cải thiện phụ Generatecsv () để xử lý một bảng excel chứa nhiều danh sách với các dòng trống tách biệt cả tiêu đề của mỗi danh sách và danh sách từ các tiêu đề của chúng. thí dụ
list title 1
item 1
item 2
list title 2
item 1
item 2
và kết hợp chúng thành nhiều hàng, 1 cho mỗi danh sách.
Lý do, tôi đã có một khách hàng gửi cho tôi nhiều từ khóa ở định dạng danh sách cho trang web của họ dựa trên chủ đề, cần một cách để đưa các từ khóa này vào các trang web một cách dễ dàng. Vì vậy, đã sửa đổi thói quen và đưa ra các điều sau đây, tôi cũng đã thay đổi tên biến thành tên có ý nghĩa:
Sub generatecsv()
Dim dataRow As Integer
Dim listRow As Integer
Dim data As String
dataRow = 1: Rem the row that it is being read from column A otherwise known as 1 in vb script
listRow = 1: Rem the row in column B that is getting written
Do Until Cells(dataRow, 1).Value = "" And Cells(dataRow + 1, 1).Value = ""
If (data = "") Then
data = Cells(dataRow, 1).Value
Else
If Cells(dataRow, 1).Value <> "" Then
data = data & "," & Cells(dataRow, 1).Value
Else
Cells(listRow, 2).Value = data
data = ""
listRow = listRow + 1
End If
End If
dataRow = dataRow + 1
Loop
Cells(listRow, 2).Value = data
End Sub