Vídeo recomendado
https://youtu.be/diWPPPhW-9E

Textbox com rolagem automática

Dúvidas gerais sobre Excel
Avatar do usuário
Alex Abreu
Colaborador
Colaborador
Mensagens: 31
Registrado em: Sáb Jun 30, 2018 4:40 pm
Localização: Rio do Campo/SC
Contato:

Textbox com rolagem automática

Mensagem por Alex Abreu »

Boa Noite, Caso tenha um outro tópico relacionado a resolver esta Dúvida peço por gentileza que o Moderador unifique para ajudar a localizar as informações
Vamos ao assunto...
Conforme comentei no video do canal Tomas Vasquez no youtube
Estou desenvolvendo um Sistema de Diárias que mais pessoas irão usar no meu trabalho, então eu criei um Userform de nome Sobre_usm que é algo comum em aplicativos
onde Informa a versão do Aplicativo, builds e Alguns informam até listagem de correções e bugs (uma espécie de diário de bordo contendo datas e o que foi realizado em tal data, etc.).

Pois bem, eu tenho uma Textbox chamada de TRelease com a propriedade Locked Ativada, Multiline Ativada e ScrollBar Vertical acionada
Minha questão é, tem como fazer a barra de rolagem rotacionar automaticamente de baixo pra cima?
eu já cheguei a ver esse efeito de texto rolando sozinho em alguns aplicativos e eu gostaria de fazer esse efeito no meu Userform, porém não faço ideia de como proceder com essa dúvida
Eu até pensei em simular através de comandos sendkeys a seta pra cima, mas não deu o resultado pretendido, alguém sabe me ajudar com essa questão?
Editado pela última vez por Alex Abreu em Sáb Mai 11, 2019 9:42 pm, em um total de 1 vez.


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
webmaster
Administrador
Mensagens: 3114
Registrado em: Sex Jul 24, 2009 2:44 pm
Contato:

Re: Textbox com rolagem automática

Mensagem por webmaster »

Você quer dizer scrollar até o fim do texto? Seria algo asim?

Código: Selecionar todos

textbox.selstart = len(textbox.Value)


Avatar do usuário
Alex Abreu
Colaborador
Colaborador
Mensagens: 31
Registrado em: Sáb Jun 30, 2018 4:40 pm
Localização: Rio do Campo/SC
Contato:

Re: Textbox com rolagem automática

Mensagem por Alex Abreu »

webmaster escreveu: Sex Mai 10, 2019 11:22 pm Você quer dizer scrollar até o fim do texto? Seria algo asim?

Código: Selecionar todos

textbox.selstart = len(textbox.Value)
Boa Tarde, o efeito que eu busco seria este daqui
ImagemEfeito que eu busco by Alex Abreu, no Flickr

Eu fiz com meu editor de video para ilustrar melhor, o nome desse efeito se chama Scroll Up
É possível fazer isso? se não tiver como fazer no textbox qual objeto VBA aceita esse efeito?


srobles
Jedi
Jedi
Mensagens: 805
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: Textbox com rolagem automática

Mensagem por srobles »

Alex,

Use o comando enviado pelo amigo Tomás, apenas alterando o valor após o sinal de =, exemplo :

Código: Selecionar todos

TRelease.SelStart = 0
Assim, a primeira linha do controle receberá o foco.

Espero ter ajudado.

Abs


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Avatar do usuário
Alex Abreu
Colaborador
Colaborador
Mensagens: 31
Registrado em: Sáb Jun 30, 2018 4:40 pm
Localização: Rio do Campo/SC
Contato:

Re: Textbox com rolagem automática

Mensagem por Alex Abreu »

srobles escreveu: Sáb Mai 11, 2019 8:24 pm Alex,

Use o comando enviado pelo amigo Tomás, apenas alterando o valor após o sinal de =, exemplo :

Código: Selecionar todos

TRelease.SelStart = 0
Assim, a primeira linha do controle receberá o foco.

Espero ter ajudado.

Abs
Não sei se me fiz entender, mas a textbox em questão está com a propriedade Locked ativada, ou seja, ela está travada para digitação, o texto contido nessa textbox vem de uma célula, o que eu quero é que o texto contido nessa textbox se mova automaticamente assim como o efeito no video que mencionei no meu post anterior.
Alex Abreu escreveu: Sáb Mai 11, 2019 4:22 pm Boa Tarde, o efeito que eu busco seria este daqui
ImagemEfeito que eu busco by Alex Abreu, no Flickr
Ou seja, é como se automaticamente a textbox fosse clicada e o vba ficasse usando a setinha para baixo de segundo em segundo até o final do texto para que a transição do início ao fim seja completa!
Se isso é possível na textbox ok, caso não seja viável fazer esse efeito demonstrado no video qual objeto vba aceita fazer isso?


srobles
Jedi
Jedi
Mensagens: 805
Registrado em: Qua Mai 06, 2015 7:39 pm

Re: Textbox com rolagem automática

Mensagem por srobles »

Alex,

Desculpa pelo equivoco amigo. Não havia me atentado ao funcionamento que o controle deve ter.

Como até o momento não precisei desenvolver algo parecido, por hora fico devendo. Vou estudar uma maneira de realizar isso, e tendo algo, retorno.

Abs


Avatar do usuário
Alex Abreu
Colaborador
Colaborador
Mensagens: 31
Registrado em: Sáb Jun 30, 2018 4:40 pm
Localização: Rio do Campo/SC
Contato:

Re: Textbox com rolagem automática

Mensagem por Alex Abreu »

srobles escreveu: Sáb Mai 11, 2019 10:07 pm Alex,

Desculpa pelo equivoco amigo. Não havia me atentado ao funcionamento que o controle deve ter.

Como até o momento não precisei desenvolver algo parecido, por hora fico devendo. Vou estudar uma maneira de realizar isso, e tendo algo, retorno.

Abs
Opa, grato pela ajuda, entendo que seja uma "perfumaria" mas se isso for possível será muito interessante a aplicação em informativos que contenham muito texto :roll:

EDIT: consegui achar um video tutorial em inglês daquilo que eu quero fazer porém no VB
https://www.youtube.com/watch?v=VJL7G8gesLM
Será possível no VBA?

EDIT2: Boa tarde a todos,
Dei uma fuçada internet adentro e consegui achar alguma coisa similar porém não exatamente como a do video mencionado no primeiro EDIT!

Extraído desse local https://www.ozgrid.com/forum/forum/othe ... lling-text
Option Explicit

Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private m_blnUnload As Boolean
Private m_blnCreditsRolling As Boolean
Private Sub CommandButton1_Click()
    If m_blnCreditsRolling Then
        m_blnUnload = True
    Else
        Unload Me
    End If
End Sub
Private Sub UserForm_Activate()
    Dim lngSpeed As Long
    m_blnCreditsRolling = True
    lngSpeed = 150
    Do While ListBox1.ListCount > 0
        ListBox1.RemoveItem 0
        DoEvents
        If m_blnUnload Then Exit Do
        Sleep lngSpeed
    Loop
    m_blnCreditsRolling = False
    If m_blnUnload Then CommandButton1_Click
End Sub
Private Sub UserForm_Initialize()
    Dim lngIndex As Long
    Dim credit As Variant
    
    credit = Array("test", "test 1", "test 2", "test", "test 1", _
    "test 2", "test", "test 1", "test 2", "test", "test 1", "test 2", _
    "test", "test 1", "test 2", "test", "test 1", "test 2", "test", _
    "test 1", "test 2", "test", "test 1", "test 2", "test", "test 1", _
    "test 2", "test", "test 1", "test 2", "test", "test 1", "test 2", _
    "test", "test 1", "test 2", "test", "test 1", "test 2")
    
   For lngIndex = LBound(credit) To UBound(credit)
        ListBox1.AddItem credit(lngIndex)
    Next
     
    For lngIndex = LBound(credit) To UBound(credit)
        ListBox1.AddItem ""
    Next
End Sub
Ele faz com que os textos ou valores dentro de uma listbox mude setando automaticamente a barra de rolagem de cima para baixo como se fosse créditos de um filme ou o tal efeito Scroll UP que mencionei no meu Post inicial

Não era bem o que buscava mas até que eu ache uma maneira do label fazer o que achei nesse video em VB irei usar este comando...
Caso alguém tiver a distreza de fazer o comando pelo label informe aqui :roll:


Disable adblock

This site is supported by ads and donations.
If you see this text you are blocking our ads.
Please consider a Donation to support the site.


Responder