Pessoal, preciso de ajuda.
Fiz uma ListView com checkbox, e lá são listadas as worksheets de um arquivo que quero extrair os dados.
Ao selecionar as worksheets na ListView, o código só copia/extrai a primeira worksheet e não o resto selecionado.
Já tentei "guia_selecionada = ListView1.ListItems.Item(i).Selected" e não funciona..
Queria também saber por curiosidade, se tem como copiar worksheet com o mesmo nome, de workbooks diferentes.(isso é uma outra parte do código).
Código: Selecionar todos
Private Sub CommandButton2_Click()
Application.ScreenUpdating = False
i = 1
For i = 1 To ListView1.ListItems.Count
If ListView1.ListItems.Item(i).Checked = True Then
guia_selecionada = ListView1.ListItems.Item(i)
End If
i = i + 1
Next i
Dim Arquivo_atual As Workbook
Dim Arquivo_importacao As Workbook
Dim Guia As Worksheet
Set Arquivo_atual = ActiveWorkbook
'Abre o arquivo excel da planilha que você quer importar os dados
Set Arquivo_importacao = Workbooks.Open(Filename:=form_importa.txt_arquivo)
' (Copia apenas a primeira worksheet selecionada na listview , quando: guia_selecionada = ListView1.ListItems.Item(i) )
For Each Guia In Arquivo_importacao.Worksheets
If Guia.Name = guia_selecionada Then
Guia.Copy After:=Arquivo_atual.Worksheets(Arquivo_atual.Worksheets.Count)
End If
Next Guia
Arquivo_importacao.Close
Unload Me
MsgBox ("Guia(s) " & guia_selecionada & " atualizada(s) com sucesso!"), vbInformation
Application.ScreenUpdating = True
End Sub