Melhorei o subgrupo generatecsv() para lidar com uma folha de excel que contém múltiplas listas com linhas em branco separando tanto os títulos de cada lista como as listas dos seus títulos. exemplo
list title 1
item 1
item 2
list title 2
item 1
item 2
e combina-os ofcourse em múltiplas linhas, 1 por lista. razão
, pedi a um cliente que me enviasse múltiplas palavras-chave em formato de lista para o seu website com base no assunto, precisava de uma forma fácil de colocar estas palavras-chave nas páginas web. Por isso, modifiquei a rotina e cheguei à seguinte conclusão, também mudei os nomes das variáveis para nomes com significado:
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