none
border vba excel RRS feed

  • Pergunta

  • Prezados amigos internautas, preciso da ajuda de VC´s em uma macro que inclua nas células que forem preenchidas "bordas", ex.

    meus preenchimentos serão nas céluas A,B e C, na mediada que forem sendo preenchidas as bordas vão aparecendo, também uma

    macro pra remoção.

     

    Obrigado pela ajuda

    Mauro

    segunda-feira, 31 de maio de 2010 17:11

Respostas

  • Boa noite, Mauro.

    Este evento de planilha deve ajudá-lo:

     

    Private Sub Worksheet_Change(ByVal Target As Range)

        Select Case Target.Column

            Case 1 To 3

                With Target

                For k = 7 To 10

                .Borders(k).LineStyle = xlContinuous

                .Borders(k).Color = vbRed

                Next k

                End With

        End Select

    End Sub

     

    [ ]s

     


    Adilson Soledade - MOS http://adilsonsoledade.blogspot.com/
    • Marcado como Resposta MauroMeira quarta-feira, 9 de junho de 2010 11:12
    terça-feira, 1 de junho de 2010 02:06
  • No caso, mesmo quando não digitamos nada as bordas estão aparecendo (modo edição) e para implementar, teria como ao deletar valores as bordas limparem?
    jose


    Conseguí implementar a idéia, veja:

    Private Sub Worksheet_Change(ByVal Target As Range)
    
      Select Case Target.Column
    
        Case 1 To 3
    
          With Target
    
          For k = 7 To 10
        If Target <> "" Then
          .Borders(k).LineStyle = xlContinuous
    
          .Borders(k).Color = vbRed
        Else
          .Borders(k).LineStyle = xlNone
        End If
          Next k
    
          End With
    
      End Select
    
    End Sub
    

     


    jose
    • Marcado como Resposta MauroMeira quarta-feira, 9 de junho de 2010 11:13
    sábado, 5 de junho de 2010 01:16

Todas as Respostas

  • Boa noite, Mauro.

    Este evento de planilha deve ajudá-lo:

     

    Private Sub Worksheet_Change(ByVal Target As Range)

        Select Case Target.Column

            Case 1 To 3

                With Target

                For k = 7 To 10

                .Borders(k).LineStyle = xlContinuous

                .Borders(k).Color = vbRed

                Next k

                End With

        End Select

    End Sub

     

    [ ]s

     


    Adilson Soledade - MOS http://adilsonsoledade.blogspot.com/
    • Marcado como Resposta MauroMeira quarta-feira, 9 de junho de 2010 11:12
    terça-feira, 1 de junho de 2010 02:06
  • Bom Dia Adilson

    Antes de tudo, agradeço pela atenção, está ótimo esta macro, mais pra incrementar um pouco mais, é possível ser acoplada em uma textbox com o evento exit.

    obrigado mais uma vez

    Abraço

    Mauro

    terça-feira, 1 de junho de 2010 16:09
  • No caso, mesmo quando não digitamos nada as bordas estão aparecendo (modo edição) e para implementar, teria como ao deletar valores as bordas limparem?
    jose
    • Editado joséA terça-feira, 1 de junho de 2010 23:36 correção
    terça-feira, 1 de junho de 2010 23:36
  • Bom Dia José

    Excelente observação, o que ajudaria muito no meu projeto, alem da implementação no evento exit, seria a exclusão de valores com as bordas.

     

    SDS

    Mauro

    quarta-feira, 2 de junho de 2010 12:32
  • No caso, mesmo quando não digitamos nada as bordas estão aparecendo (modo edição) e para implementar, teria como ao deletar valores as bordas limparem?
    jose


    Conseguí implementar a idéia, veja:

    Private Sub Worksheet_Change(ByVal Target As Range)
    
      Select Case Target.Column
    
        Case 1 To 3
    
          With Target
    
          For k = 7 To 10
        If Target <> "" Then
          .Borders(k).LineStyle = xlContinuous
    
          .Borders(k).Color = vbRed
        Else
          .Borders(k).LineStyle = xlNone
        End If
          Next k
    
          End With
    
      End Select
    
    End Sub
    

     


    jose
    • Marcado como Resposta MauroMeira quarta-feira, 9 de junho de 2010 11:13
    sábado, 5 de junho de 2010 01:16
  • Bom Dia José

     

    Muito obrigado pela resposta, foi de grande valia

     

    Abraço

    Mauro

    quarta-feira, 9 de junho de 2010 11:14
  • De minha parte, disponha.

     

    Mas o méritos são do Adilson que criou o procedimento.


    jose
    quarta-feira, 9 de junho de 2010 13:23
  • Ok José, realmente VC tem razão, meus cinceros agradecimentos ao Adilson também pelo procedimento.

     

    Abraço

    A Todos

     

    quarta-feira, 9 de junho de 2010 16:36