ERRO INDEX - VBA

ALANTB 30/03/2010 14:14:15
#338231
Galera, tenho um Listview no VBA, que carrega os dados, mas na hora de gravar esses dados em outra planilha da erro de índex. O listview tem só duas colunas , ele ta puxando a segunda coluna como item de índex numero 1.Mas eu preciso puxar também os dados da primeira coluna.Já coloquei como índex : zero, um,..mas não grava.Dá Erro em Tempo de Execução’35600’ ‘Index out of bound’.Como fica a ordem correta de índex????Segue um trecho do código...


Private Sub UserForm_Initialize()

TotalRegistros = Nomes.UsedRange.Rows.Count
TotalRegistros = Lancamentos.UsedRange.Rows.Count
Call PreencheLista

End Sub
Private Sub cmdGravar_Click()

With Lancamentos
TotalRegistros = Lancamentos.UsedRange.Rows.Count
[ô]TotalRegistros = Nomes.UsedRange.Rows.Count
LinhaPlanilha = TotalRegistros + 1

Dim y As Integer
y = LinhaPlanilha

For X = 1 To ListView1.ListItems.Count
.Cells(y, 2) = ListView1.ListItems(X).ListSubItems.Item(1) [ô]aqui puxa os nomes para col B, ok
.Cells(y, 1) = ListView1.ListItems(X).ListSubItems.Item(0) [ô]aqui da erro de [Ô]index out of bounds[Ô]

y = y + 1
Next X

End With

End Sub
Private Sub PreencheLista()
Dim startrow As Integer [ô]beginning of data
Dim endrow As Integer [ô]end of data
Dim pos As Integer [ô]rowno
Dim lv_item As Integer [ô]listview item no
Dim counting As Integer [ô]loopvariable to go through data

startrow = 2
endrow = xlLastRow([Ô]NOMES[Ô])
pos = 2
lv_item = 1

With ListView1
[ô]gives me headers at the top
.View = lvwReport
[ô]defining the columnheaders
[ô].Sorted = True
[ô].SortKey = 1
With .ColumnHeaders
.Clear
[ô].Add , , [Ô][Ô], 0
.Add , , [Ô]Matricula[Ô], 50
.Add , , [Ô]Nome[Ô], 180

End With
[ô].Sorted = True
[ô].SortKey = 1
.HideColumnHeaders = False
.Appearance = ccFlat
.FullRowSelect = True
.Gridlines = True
[ô].Sorted = True
[ô].SortKey = 1
For counting = startrow To endrow

.ListItems.Add , , Worksheets([Ô]NOMES[Ô]).Range([Ô]A[Ô] & pos)
.ListItems(lv_item).ListSubItems.Add , , Worksheets([Ô]NOMES[Ô]).Range([Ô]B[Ô] & pos)

lv_item = lv_item + 1
pos = pos + 1
Next counting

End With

End Sub
ALANTB 31/03/2010 21:26:46
#338348
Pessoal, descobri como contornar o erro.Segue:

.ListItems.Add , , Worksheets([Ô]NOMES[Ô]).Range([Ô]A[Ô] & pos)
.ListItems(lv_item).ListSubItems.Add , , Worksheets([Ô]NOMES[Ô]).Range([Ô]A[Ô] & pos)[ô]SOMENTE INSERI ESSA LINHA E TUDO OK.
.ListItems(lv_item).ListSubItems.Add , , Worksheets([Ô]NOMES[Ô]).Range([Ô]B[Ô] & pos)

lv_item = lv_item + 1
pos = pos + 1
Next counting

Valeu pela atenção de todos .Vou encerrar
Tópico encerrado , respostas não são mais permitidas