Pessoal,
Utilizo p código abaixo para exportar as informações da listview para uma nova planilha do excel. Eu o pequei aqui no planilhando.com.br. O mesmo funciona perfeitamente.
Porém eu quero personalizá-lo. Vide abaixo as minhas pretensões:
- Quero que, além dos dados da listview, a nova planilha também receba, na célula b2, por exemplo, a minha logo marcA, a qual localiza-se na image1 da listview referida.
- Quero também que as colunas da nova planilha já se apresentem com os filtros.
Código:
Private Sub CommandButton43_Click()
Dim xlApp As Object
Dim xlWb As Object
Dim xlWs As Object
Dim ROW As Integer
Dim Col As Integer
Set xlApp = CreateObject("Excel.Application")
Set xlWb = xlApp.Workbooks.Add
Set xlWs = xlWb.Worksheets(1)
xlApp.Visible = True
xlApp.UserControl = True
xlWs.Columns(1).ColumnWidth = 5
xlWs.Columns(2).ColumnWidth = 60
xlWs.Columns(3).ColumnWidth = 30
xlWs.Columns(4).ColumnWidth = 30
xlWs.Columns(5).ColumnWidth = 10
xlWs.Columns(6).ColumnWidth = 10
xlWs.Columns(7).ColumnWidth = 13
xlWs.Columns(8).ColumnWidth = 13
xlWs.Columns(9).ColumnWidth = 13
xlWs.Columns(10).ColumnWidth = 13
xlWs.Columns(11).ColumnWidth = 60
xlWs.Rows(1).RowHeight = 18
xlWs.Range("A1:k65000").Font.Size = 11
With xlWs.Range("A1:k1")
.HorizontalAlignment = xlLeft
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
.Font.Bold = True
End With
With Selection
.HorizontalAlignment = xlLeft
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
With Selection
.HorizontalAlignment = xlLeft
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
.MergeCells = False
End With
xlWs.Cells(1, 1).Value = "ID"
xlWs.Cells(1, 2).Value = "Descrição do Item"
xlWs.Cells(1, 3).Value = "Centro de Custo"
xlWs.Cells(1, 4).Value = "Conta Razão"
xlWs.Cells(1, 5).Value = "Tipo"
xlWs.Cells(1, 6).Value = "Valor"
xlWs.Cells(1, 7).Value = "Vencimento"
xlWs.Cells(1, 8).Value = "Previsto"
xlWs.Cells(1, 9).Value = "Pagamento"
xlWs.Cells(1, 10).Value = "Situação"
xlWs.Cells(1, 11).Value = "Cliente"
For ROW = 2 To lslista.ListItems.Count + 1
For Col = 1 To lslista.ColumnHeaders.Count
If Col = 1 Then
xlWs.Cells(ROW, Col).Value = lslista.ListItems(ROW - 1).Text
Else
xlWs.Cells(ROW, Col).Value = lslista.ListItems(ROW - 1).SubItems(Col - 1)
End If
Next
Next ROW
End Sub
Postado : 17/05/2014 10:56 am