Vídeo recomendado
https://youtu.be/diWPPPhW-9E
https://youtu.be/diWPPPhW-9E
Limitações quanto ao número de linhas
-
- Acabou de chegar
- Mensagens: 3
- Registrado em: Qua Jul 15, 2015 9:21 am
Limitações quanto ao número de linhas
Desde já agradeço a disponibilização dos modelos de cadastro/pesquisa.
Mas, vamos a dúvida!
O modelo de cadastro/pesquisa tem limitações quanto ao número de linhas?
Tenho uma planilha com mais de 700.000 linhas, 7 colunas e 53 MB de tamanho. Fiz alterações no modelo de cadastro V2 (tentei sem sucesso adaptar o modelo V3).
Basicamente não tenho interesse na função de cadastro, apenas confirmar dados de NIS, nome e CadUnico de demandas que recebo. Necessito confirmar o número do CadUnico pesquisando (filtros) pelo nome, pelo NIS ou pelo próprio CadUnico (confirmação). Nos testes com o formulário de pesquisa percebi que ocorriam falhas. Fiz testes de busca dos dados nas linhas 10.000, 20.000, 30.000. A partir da linha 35.000 linha não houve qualquer retorno de busca. O formulário de cadastro exibe o último registro da planilha de dados.
Há tambem outros erros:
1. No formulário de pesquisa a lstCidades não exibe as cidades.
2. O filtro de ascendente e descendente não funciona.
3. O formulário de pesquisa inicializa apenas se for adicionado um underline (_) após o Initialize (Private Sub UserForm_Initialize()_'preenche o cboDirecao e seleciona o primeiro item
Obrigado!
Agradeço pela ajuda!
Mas, vamos a dúvida!
O modelo de cadastro/pesquisa tem limitações quanto ao número de linhas?
Tenho uma planilha com mais de 700.000 linhas, 7 colunas e 53 MB de tamanho. Fiz alterações no modelo de cadastro V2 (tentei sem sucesso adaptar o modelo V3).
Basicamente não tenho interesse na função de cadastro, apenas confirmar dados de NIS, nome e CadUnico de demandas que recebo. Necessito confirmar o número do CadUnico pesquisando (filtros) pelo nome, pelo NIS ou pelo próprio CadUnico (confirmação). Nos testes com o formulário de pesquisa percebi que ocorriam falhas. Fiz testes de busca dos dados nas linhas 10.000, 20.000, 30.000. A partir da linha 35.000 linha não houve qualquer retorno de busca. O formulário de cadastro exibe o último registro da planilha de dados.
Há tambem outros erros:
1. No formulário de pesquisa a lstCidades não exibe as cidades.
2. O filtro de ascendente e descendente não funciona.
3. O formulário de pesquisa inicializa apenas se for adicionado um underline (_) após o Initialize (Private Sub UserForm_Initialize()_'preenche o cboDirecao e seleciona o primeiro item
Obrigado!
Agradeço pela ajuda!
- Anexos
-
- ModeloCadastro.zip
- Arquivo de consulta por Nome NIS e CadUnico
- (54.2 KiB) Baixado 280 vezes
- Reinaldo
- Jedi
- Mensagens: 1537
- Registrado em: Sex Ago 01, 2014 4:09 pm
- Localização: Garça - SP / SCS - SP
Re: Limitações quanto ao número de linhas
Não testei todos os recursos, mas os "erros" apontados devem-se a adaptação feita com falhas.
Ao alterar a planilha base de .xls para .xlsm o "motor" de coneção "Jet" não é mais valido devendo se utilizado o "Ace", altere sua rotina de conexão conforme o disposto em:
viewtopic.php?f=5&t=3859&hilit=+%2Aconex%2A#p15743
Lembrando que se for ambiente 64 bits também ocorrerá problemas.
A rotina de abertura apresenta erro, pois ao executar a rotina Popula Cidades, apresenta erro porque foi alterado o nome do campo na tabela.
a rotina Chama Cidade e na tabela está Cidades.
O filtro ascendente /Descendente funciona em conjunto com a seleção do campo de ordem (Ordenar Por), se nada for indicado nada ocorre.
Corrija as modificações e teste
Ao alterar a planilha base de .xls para .xlsm o "motor" de coneção "Jet" não é mais valido devendo se utilizado o "Ace", altere sua rotina de conexão conforme o disposto em:
viewtopic.php?f=5&t=3859&hilit=+%2Aconex%2A#p15743
Lembrando que se for ambiente 64 bits também ocorrerá problemas.
A rotina de abertura apresenta erro, pois ao executar a rotina Popula Cidades, apresenta erro porque foi alterado o nome do campo na tabela.
a rotina Chama Cidade e na tabela está Cidades.
Código: Selecionar todos
Private Sub PopulaCidades()
Dim conn As ADODB.Connection
Dim rst As ADODB.Recordset
Dim sql As String
Set conn = New ADODB.Connection
'With conn
' .Provider = "Microsoft.JET.OLEDB.4.0"
' .ConnectionString = "Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 8.0;"
' .Open
'End With
With conn
If Val(Application.Version) < 12 Then
.Provider = "Microsoft.JET.OLEDB.4.0"
.ConnectionString = "Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 8.0;"
.Open
Else
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=" & ThisWorkbook.FullName & ";Extended Properties=Excel 12.0;"
.Open
End If
End With
sql = "SELECT DISTINCT Cidades FROM [Dados$]"
Set rst = New ADODB.Recordset
With rst
.ActiveConnection = conn
.Open sql, conn, adOpenDynamic, _
adLockBatchOptimistic
End With
Do While Not rst.EOF
If Not IsNull(rst(0).Value) Then
lstCidades.AddItem rst(0).Value
End If
rst.MoveNext
Loop
' Fecha o conjunto de registros.
Set rst = Nothing
' Fecha a conexão.
conn.Close
End Sub
Corrija as modificações e teste
-
- Acabou de chegar
- Mensagens: 3
- Registrado em: Qua Jul 15, 2015 9:21 am
Re: Limitações quanto ao número de linhas
Rmarcos obrigado pela pronta resposta!
Apenas hoje consegui realizar as alterações sugeridas por você.
A falha do “Cidade” e “Cidades” ocorreu porque utilizei duas planilhas diferentes nas várias tentativas de adaptação do modelo v2. Ainda sou iniciante em VBA, e as alterações surtiram efeito e o formulário de pesquisa está funcionando perfeitamente. Um pouco lento, mas funcionando.
Tentei adaptar o modelo V3. Quando os arquivos alterados do MdC_FrontEnd ListView e ModeloCadastro_Dados são salvos como pastas de trabalho do excel 97-2003 os formulários funcionam bem. O problema é quanto a limitação do número de linhas do excel 97-2003. Alterando os arquivos para .xlsm e mudando as rotinas de conexão como indicado aqui recebo a mensagem de erro.
“Erro em tempo de execução '-2147467259 (800004005)'
Cadastrados$ não é um nome válido. Certifique-se de que ele inclua somente caracteres ou pontuação válidos e de que não seja longo demais”
De qualquer forma fico agradecido pela ajuda e vou tentar ir até o meu limite nas tentativas de adaptação do modelo V3.
Depois farei o retorno do sucesso/insucesso
Obrigado!
Apenas hoje consegui realizar as alterações sugeridas por você.
A falha do “Cidade” e “Cidades” ocorreu porque utilizei duas planilhas diferentes nas várias tentativas de adaptação do modelo v2. Ainda sou iniciante em VBA, e as alterações surtiram efeito e o formulário de pesquisa está funcionando perfeitamente. Um pouco lento, mas funcionando.
Tentei adaptar o modelo V3. Quando os arquivos alterados do MdC_FrontEnd ListView e ModeloCadastro_Dados são salvos como pastas de trabalho do excel 97-2003 os formulários funcionam bem. O problema é quanto a limitação do número de linhas do excel 97-2003. Alterando os arquivos para .xlsm e mudando as rotinas de conexão como indicado aqui recebo a mensagem de erro.
“Erro em tempo de execução '-2147467259 (800004005)'
Cadastrados$ não é um nome válido. Certifique-se de que ele inclua somente caracteres ou pontuação válidos e de que não seja longo demais”
De qualquer forma fico agradecido pela ajuda e vou tentar ir até o meu limite nas tentativas de adaptação do modelo V3.
Depois farei o retorno do sucesso/insucesso
Obrigado!
- Mauro Coutinho
- Jedi
- Mensagens: 1561
- Registrado em: Sáb Mar 13, 2010 8:10 pm
- Localização: São José dos Pinhais - Pr
Re: Limitações quanto ao número de linhas
Antonio, alem da dica do colega Rmarco, você terá erros pois o modelo que anexou se verificar na abas Dados temos dados até a linha 20 e pulamos varias linhas em branco e temos dados novamente nas linhas A797406 - A797413, então limpe tudo o que tiver depois da linha 20, mas lembre-se que o excel interpreta como celula com dados as celulas vazias mas que estejam formatadas.
[]s
[]s
- joseA
- Jedi
- Mensagens: 1048
- Registrado em: Qui Out 22, 2009 7:22 am
- Localização: Cel. Fabriciano - MG
Re: Limitações quanto ao número de linhas
Para esse caso, mencionado pelo Mauro, eu prefiro excluir as linhas.
-
- Acabou de chegar
- Mensagens: 3
- Registrado em: Qua Jul 15, 2015 9:21 am
Re: Limitações quanto ao número de linhas
Olá Mauro!
As correções sugeridas pelo colega resolveram o problema. Quando fiz a exclusão de dados para diminuir o tamanho do arquivo devo ter deixado as linhas finais em apagar. De qualquer forma agradeço as observações. Sou iniciante em VBA.
Faz pouco tempo que descobri que exitem limitações quanto ao número de linhas de cada planilha individual nas versões 97, 2003 e 2007 do MS office.
As correções sugeridas pelo colega resolveram o problema. Quando fiz a exclusão de dados para diminuir o tamanho do arquivo devo ter deixado as linhas finais em apagar. De qualquer forma agradeço as observações. Sou iniciante em VBA.
Faz pouco tempo que descobri que exitem limitações quanto ao número de linhas de cada planilha individual nas versões 97, 2003 e 2007 do MS office.