Notifications
Clear all

Listview Zebrado dentro de um multpage

13 Posts
4 Usuários
0 Reactions
4,229 Visualizações
(@mark70)
Posts: 5
Active Member
Topic starter
 

Boa tarde.

Baixei da net um código para deixar o Listview zebrado. Funcionou, mas coloquei o Listview dentro de um controle multpage não ficou mais zebrado. Fiz um teste e coloquei dentro de um TabStrip. Até ficou zebrado mas gostaria mesmo de utilizar o multpage que me parece bem mais fácil para se trabalhar.

Alguém tem idéia de como resolver este "probleminha" ?

Grato,

Marcos

 
Postado : 21/03/2013 2:16 pm
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

Marcos,

Boa Tarde!

É possível sim, muito embora eu nunca tenha programado assim (nunca precisei e por isso não entendo exatamente o que foi feito). Veja, no site abaixo, um exemplo que faz isso, de um dos participantes do fórum.
http://www.vbmania.com.br/pages/index.p ... arID=15571

 
Postado : 25/03/2013 2:02 pm
(@mark70)
Posts: 5
Active Member
Topic starter
 

Wagner, tentei o código do link mas não deu certo, pois "acho" que não tem o componente picture no VBA. Aquele código é pra VB mesmo.

Mesmo assim agradeço pela disposição em ajudar.

Abraço,

Marcos

 
Postado : 26/03/2013 1:59 pm
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

Marcos,

Veja esse exemplo que achei no site do mestre Tomás Vasquez. Créditos totais para o Tomás e outros autores.

 
Postado : 26/03/2013 5:23 pm
(@mark70)
Posts: 5
Active Member
Topic starter
 

Wagner, este código foi justamente o primeiro que baixei quando quis fazer um Listview zebrado.

Funciona, se você deixar o Listview apenas dentro do form, mas se colocá-lo dentro de um multpage, adeus zebrado.

É este o grande X da questão, fazer o zebrado funcionar dentro de um controle multpage.

Mais uma vez obrigado.

Abraço,

Marcos

 
Postado : 27/03/2013 4:44 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

Marcos,

Talvez não estejamos conseguindo estabeler uma comunicação eficaz.

Veja, no arquivo anexo, que agora ele está funcionando dentro de um Multipage. Não alterei nenhuma linha de código. O mérito continua sendo dos seus autores. apenas desenhei um MultPage e transferi o ListView para dentro da primeira página desse MultPage.

 
Postado : 27/03/2013 5:52 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Wagner, assim como o Marcos, ainda não consegui utilizar a função "Zebrada" com o listview "dentro" do multipage, porem aparentemente contigo funcionou.
vc tem alguma configuração especifica no seu vbe?

 
Postado : 27/03/2013 6:24 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

Vixe, reinado!

Só agora observei que, na verdade, aqui também ele não está saindo "zebrado" no multipage. É que simplesmente carreguei o arquivo e não deu erro... nem me liguei que tinha que ser "zebrado".

É amigos... realmente não funciona no multipage!

 
Postado : 27/03/2013 7:05 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

Quem sabe os autores do código possa ver esse tópico e nos ajudar??? atenção caro Tomás Vasquez e Mauro Coutinho! Precisamos de ajuda!

Talvez, uma boa idéia, seja colocar essa demanda no proprio blog do Tomás Vasquez.
http://www.tomasvasquez.com.br/blog/

 
Postado : 27/03/2013 7:07 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Wagner, Reinaldo e Marcos,

Antes de mais nada eu não sou o autor do código, só fiz a adaptação dos códigos que eram para VB (fonte no arquivo) em VBA, e não foi nada fácil.

No outro tópico do colega Marcos :
Mudar cor da linha no LISTVIEW
viewtopic.php?f=10&t=7485

Eu havia indicado este modelo que chega a listrar um listview e hoje até fonte pelo menos no momento não está disponivel, não sei se tiraram do ar.

Mas voltando ao assunto em questão, o controle ListView apesar de fazer parte no VBA encontra-se muito pouco a respeito do mesmo, e na epoca quando postaram duvida referente a zebrar no Forum do Tomas, resolvi pesquisar e não encontrei nada sobre esta implementação expecificamente para Excel (VBA), tudo que temos é com VB, até a dica que o Wagner postou é em VB tambem, e a diferença é que várias propriedades em VB não se comunicam com VBA e me lembro que devido aos afazeres diários, levei mais ou menos 01 mes até chegar ao resultado esperado, lembrando que como podem ver nos comentários do modelo que a rotina não tem nem como rodar utilizando passo a passo pois da pane, e várias vezes tive de reiniciar até o PC.

Desde o dia que vi este tópico, sempre que sobra um tempinho tenho feito pesquisas procurando entender o porque não da certo dentro de um MultPage, já fiz várias alterações nos códigos e não obtive sucesso, e como o Wagner até sugeriu vou colocar esta questão no forum do Tomas e em outros foruns que participo, assim teremos mais ajuda e sugestões e quem sabe uma solução em tempo mais rápido.

Por enquanto só tenho a pedir paciencia que a qualquer momento podemos ter uma resolução.

Abraços

 
Postado : 27/03/2013 8:59 am
(@nxtzr)
Posts: 13
Eminent Member
 

Pessoal,

Estou usando este código numa planilha aqui da empresa, e quando tento abri-la em num PC específico daqui ela retorna o seguinte erro:

"Erro de compilação:
o código desse projeto deve ser atualizado para uso em sistemas de 64 bits. Analise e atualize as instruções Declare e, em seguida, marque-as com o atributo PtrSafe."

Alguém sabe o porque? Só nele da isso.
Ele é 64bits. Mas a planilha funciona em outros pcs 64 bits.

Obs:
Desculpas por desenterrar o tópico.

 
Postado : 27/01/2015 9:08 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa tarde nxtzr

Na próxima vez, antes de postar, utilize a pesquisa do fórum, lá você iria encontrar vários tópicos sobre o assunto.
Clique no link abaixo para acessar uma matéria sobre o assunto:
http://www.ambienteoffice.com.br/office ... pi_no_vba/

Se a dica foi útil, clique na mãozinha que fica do lado da ferramenta Citar.

[]s

 
Postado : 27/01/2015 9:44 am
(@nxtzr)
Posts: 13
Eminent Member
 

Patropi, obrigado pela ajuda!

Estou tendo uma dificuldade horrível para fazer as adaptações.

Mas o que eu estou achando estranho é o seguinte:

Windows 7 x64 + Office 2010 32 bits = Código funciona
WIndows 7 x86 + Office 2013 32 bits = Código funciona
Windows 7 x64 + Office 2013 64 bits = Código Não funciona
Windows 7 x32 + Office 2007 = Código Não Funciona

Pelo que li no link que você me passou o código faz uma referência a versão do Windows para definir se a API precisa do atributo PtrSafe ou não.
Mas ela funciona no Windows x64. Ela não funciona é no Office 64 bits!

Você pode me ensinar?

Obs: A versão do VBA do Office 2013 é a 7.1. A estrutura é a mesma do VBA 7?

 
Postado : 27/01/2015 12:23 pm