locked
Transformar uma userform em barra de ferramentas RRS feed

  • Pergunta

  •  

    Boa noite pessoal.

    Estou com um problema com um userform que criei.

    Criei a caixa e fiz um botão que a chama para a area de trabalho do excel, mas enquanto não confirmo ou cancelo a operação na caixa não posso fazer outras coisas na planilha como selecionar outras células.

     

    Já vi outros usuários dizendo que da pra transforma-la em barra de ferramentas e assim posso fazer outras coisas na planilha enquanto a caixa ainda está aberta na tela. Se puderem ajudar agradeço.

    Luciano...

    terça-feira, 29 de abril de 2008 22:55

Respostas

  • Olá Luciano,

     

    Chame seu formulário com esse código

     

    Code Snippet

    UserForm1.Show False

     

     

     

    Mas também você pode criar uma barra de ferramentas como uma do excel ao invés de usar formulários..

    Até..

    quarta-feira, 30 de abril de 2008 11:56
  • O outro pode por num módulo também...

    Nomeie o Código..

    Ex..

    Sub CriaBF()

    'copie o código aqui

    End Sub

     

    Depois na tela da planilha aperte ALT+F8

    Selecione a macro CriaBF e aperte executar...

    Verifique se apareceu uma barra logo acima da barra de fómulas

     

    Qualquer dúvida post denovo..

    Até mais...

    quarta-feira, 30 de abril de 2008 13:18

Todas as Respostas

  • Olá Luciano,

     

    Chame seu formulário com esse código

     

    Code Snippet

    UserForm1.Show False

     

     

     

    Mas também você pode criar uma barra de ferramentas como uma do excel ao invés de usar formulários..

    Até..

    quarta-feira, 30 de abril de 2008 11:56
  • Opaa, obrigado Evangelistalion, era justamente o que eu queria.

     

    Gostaria de saber também um pouco sobre como criar uma barra de ferramenta sem usar formulários, se possivel...

    Brigadão mesmo!!

     

    quarta-feira, 30 de abril de 2008 12:26
  • Este exemplo cria um BF e 2 controles..

     

    Code Snippet

    Application.CommandBars.Add(Name:="ADM").Visible = True'Cria uma BF chamada ADM

    Application.CommandBars("ADM").Position = msoBarTop'Posiciona a BF no topo

    Set barra = CommandBars("ADM")

    barra.Controls.Add Type:=msoControlPopup'Adiciona um Popup na BF

    barra.Controls(1).Caption = "Cadastro"'Nomeia o 1º controle(Popup)

    barra.Controls(1).Controls.Add Type:=msoControlButton'Adiciona um botão na Popup

    barra.Controls(1).Controls(1).Caption = "Clientes"'Nomeia o botão

    barra.Controls(1).Controls(1).Style = msoButtonCaption'Define o estilo do botão

    barra.Controls(1).Controls(1).OnAction = "Ação" 'Define uma ação para o botão

     

     

     

     

    Ponha este código num módulo..

    Code Snippet

    Sub Ação()

    Msgbox "Ação 1"

    End Sub

     

     

     

    Faço com código a barra, mas também você pode criá-la manualmente...

    Até...

    quarta-feira, 30 de abril de 2008 12:56
  • Não entendi muito bem não.

     

    O código que vai no módulo eu sei, mas o outro eu não sei onde escrevo.

     

    quarta-feira, 30 de abril de 2008 13:07
  • O outro pode por num módulo também...

    Nomeie o Código..

    Ex..

    Sub CriaBF()

    'copie o código aqui

    End Sub

     

    Depois na tela da planilha aperte ALT+F8

    Selecione a macro CriaBF e aperte executar...

    Verifique se apareceu uma barra logo acima da barra de fómulas

     

    Qualquer dúvida post denovo..

    Até mais...

    quarta-feira, 30 de abril de 2008 13:18
  • Nossa muito loko.... Show de bola essa dica! Valew mesmo Evangelistalion.

    Uso o Excel 2007 a barra ficou depois dos suplementos, já tenho mil idéias do que fazer com ela!!!

     

    Abraço....

     

     

    quarta-feira, 30 de abril de 2008 13:51
  • Bom dia!

    Como faço para que esse menu só seja exibido em uma planilha especifica e ao abrir outra o menu do excel volte ao normal?

    Obrigado.
    quarta-feira, 13 de janeiro de 2010 12:05
  • Olá....

    Coloque o código dentro EstaPasta_de_Trabalho no editor do VB...

    O nome da minha barra de ferramenta é teste....Ao selecionar a Plan1 a barra aparece....ao mudar para outra a barra desaparece..

    Private Sub Workbook_SheetActivate(ByVal Sh As Object)
        If Sh.Name = "Plan1" Then
             Application.CommandBars("teste").Visible = True
        Else
             Application.CommandBars("teste").Visible = False
        End If
    End Sub

    Se solucionar marque como resposta...
    Sugestão: Quando for fazer uma nova pergunta abra uma outra thread.....

    ATÉ...
    quarta-feira, 20 de janeiro de 2010 11:33
  • Viva...

    Consegui fazer o BF no entanto não consegui executar a acção "OnAction".

    Tenho o seguinte código:

    Private Sub Workbook_Open()
        Application.CommandBars.Add(Name:="GameGest").Visible = True 'Cria uma CommandBars("GameGest") chamada GameGest
        Application.CommandBars("GameGest").Position = msoBarTop 'Posiciona a CommandBars("GameGest") no topo
        'Adicionar Menu Executar
        With Application.CommandBars("GameGest")
            .Controls.Add Type:=msoControlPopup
            .Controls(1).Caption = "Executar"
            .Controls(1).Controls.Add Type:=msoControlButton 'Adiciona um botão na Popup
            .Controls(1).Controls(1).Caption = "Lançar Cliente" 'Nomeia o botão
            .Controls(1).Controls(1).Style = msoButtonCaption 'Define o estilo do botão
            .Controls(1).Controls(1).OnAction = "Soma"
        End With
    End Sub


    Sub Soma()
    MsgBox "Soma"
    End Sub

    Dá a seguinte mensagem de erro "Não é possível executar a macro 'Livro1.xlsm!Soma'. A macro poderá não estar disponível neste livro ou todas as macros poderão estar desactivadas"

    sexta-feira, 12 de novembro de 2010 20:42
  • A sub soma está em um módulo?

    Se não coloque-a e vê se deu certo

    terça-feira, 23 de novembro de 2010 12:41