Detalhes de vba coluna numero inputbox retorna letra coluna

PropriedadeValor
Nome:vba coluna numero inputbox retorna letra coluna
Descricao:

Saberexcel - site das macros

Essa macro do Aplicativo Microsoft Excel VBA(Visual Basic Application), retorna a letra da coluna, com auxílio de um entrada de dados InputBox,
quando usuário digitar o número da coluna, retornará a letra.
Observe que atendo ao Pedido da Melina, usei o mesmo código no Evento_Change da Folha de Planilha ao 'digitar', na célula(E15), o procedimento da saida de dados para célula(G15)

Sub Coluna_Letra_Numero()
Dim vNumColuna As Integer, iValor As Integer, zSB As Integer
On Error Resume Next ' se nao digitar nada ou numero nao existente
vNumColuna = InputBox("Digite o valor da letra da coluna desejada", "Saberexcel - site das macros", "155")
'vNumColuna = ActiveCell.Column

If vNumColuna <= 26 Then
MsgBox Chr(vNumColuna + 64), vbInformation, "Saberexcel - site das macros"
Else

iValor = Application.RoundDown(vNumColuna / 26, 0)

If iValor = vNumColuna / 26 Then iValor = iValor - 1
zSB = (vNumColuna - (26 * iValor)) + 64
MsgBox "Coluna [ " & vNumColuna & " ] é a coluna [ " & Chr(iValor + 64) & Chr(zSB) & " ]", vbInformation, "Saberexcel - site das macros"
End If

End Sub

 


'USANDO O MESMO CÓDIGO NO EVENTO CHANGE - E DANDO SAIDA PARA UMA CÉLULA(G15).
Observe que usei o mesmo código para retornar os mesmos valores quando determinado valor for digitado na célula(E15).
veja que a linha de código: If Not Intersect(Target, Range("E15")) Is Nothing Then, rodará o procedimento se a condição for verdadeira,
isto é, se a célula ativa for a célula(E15), senão(Else) sai do procedimento(Exit Sub)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim vNumColuna As Integer, iValor As Integer, zSB As Integer
On Error Resume Next ' se nao digitar nada ou numero nao existente

If Not Intersect(Target, Range("E15")) Is Nothing Then
vNumColuna = Range("E15").Value 'InputBox("Digite o valor da letra da coluna desejada")

'vNumColuna = ActiveCell.Column
' se a letra da coluna correspondente ao número for igual ou menor que 26
If vNumColuna <= 26 Then
MsgBox Chr(vNumColuna + 64)
[G15].Value = "Coluna [ " & vNumColuna & " ] é a coluna..: [ " & Chr(vNumColuna + 64) & " ]"
Else

iValor = Application.RoundDown(vNumColuna / 26, 0)

If iValor = vNumColuna / 26 Then iValor = iValor - 1
zSB = (vNumColuna - (26 * iValor)) + 64
[G15].Value = "Coluna [ " & vNumColuna & " ] é a coluna [ " & Chr(iValor + 64) & Chr(zSB) & " ]"
End If
Else
Exit Sub
End If

End Sub


Aprenda tudo sobre o Aplicativo Microsoft Excel VBA(Visual Basic Application), sozinho, com baixo custo, praticando com os produtos didáticos SaberExcel




Nome do arquivo:vba coluna numero inputbox retorna letra coluna.zip
Tamanho: Vazio
Tipo:zip (Tipo de Mime: application/zip)
Autor:SaberExcel
Criado em: 05/03/2011 16:28
Visitas:Todos
Responsavel:Autor
Acessos:1017 Acessos
Atualizado em: 05/03/2011 16:30
Site: