Views

...

Important:

Quaisquer soluções e/ou desenvolvimento de aplicações pessoais, ou da empresa, que não constem neste Blog podem ser tratados como consultoria freelance.

E-mails

Deixe seu e-mail para receber atualizações...

eBook Promo

Mostrando postagens com marcador Excel VBA. Mostrar todas as postagens
Mostrando postagens com marcador Excel VBA. Mostrar todas as postagens

Excel VBA - Como contar Quantas Vogais e Consoantes Contém um String

Excel VBA - Como contar Quantas Vogais e Consoantes Contém um String


Supondo que a frase que deseja contar esteja na célula A1, as funções abaixo lhe atenderão plenamente:

Fórmula Excel para contar as Consoantes:

 =LEN(A1)-SUMPRODUCT(LEN(A1)-LEN(SUBSTITUTE(LOWER(A1),{"a","e","i","o","u"},"" )))
Fórmula Excel para contar as Vogais:

 =SUMPRODUCT(LEN(A1)-LEN(SUBSTITUTE(LOWER(A1),{"a","e","i","o","u"},"" )))



A mesma análise pode ser realizada utilizando funções VBA:

Sub Contando_Consoantes()
Dim Cons_Count As Integer
Dim Str

Dim KCount As Integer
Dim i As Integer
Dim Chr As String

Let Str = ActiveSheet.Range("A1").Value
Let KCount = 0

For i = 1 To Len(Str)

Let Chr = UCase(Mid(Str, i, 1))

If Not Chr Like "[AEIOU]" Then
Let KCount = KCount + 1
End If

Next i

Let Cons_Count = KCount

MsgBox Cons_Count
End Sub

Sub 
Contando_Vogais()
Dim Vowel_Count As Integer
Dim Str

Dim KCount As Integer
Dim i As Integer
Dim Chr As String

Let Str = ActiveSheet.Range("A1").Value
Let KCount = 0

For i = 1 To Len(Str)

Let Chr = UCase(Mid(Str, i, 1))

If Chr Like "[AEIOU]" Then
Let KCount = KCount + 1
End If

Next i

Let Vowel_Count = KCount

MsgBox Vowel_Count

End Sub


Deixe seus comentários, COMPARTILHE este artigo!


⬛◼◾▪ Social Media ▪◾◼⬛
• FACEBOOK • TWITTER • INSTAGRAM • TUMBLR • GOOGLE+ • LINKEDIN • PINTEREST

⬛◼◾▪ Blogs ▪◾◼⬛ 

⬛◼◾▪ CONTATO ▪

Excel VBA - Fazendo o Excel Ler um Arquivo Texto

Excel VBA - Fazendo o Excel Ler um Arquivo Texto


É importante que saibamos utilizar certas funcionalidades aparentemente pouco comuns. Quem sabe enviar pequenas mensagens aos usuários durante a espera de um processamento ou informar o andamente de uma análise o mesmo ler o resultado analítico de Dashboard. Use a criatividade!

Sub Speech_FromFile()

Dim Voice As SpVoice                          ' Voice Object
Dim VoiceFile As SpFileStream          ' File Stream Object
Dim File As String                                  ' File Name

Set Voice = New SpVoice
Set VoiceFile = New SpFileStream

Voice.Speak "This is an Example For Reading Out a File"

File = "C:\Documents and Settings\Administrator\My Documents\Sample.txt"

VoiceFile.Open File

Voice.SpeakStream VoiceFile

End Sub


Sub Read_Cells()
Dim x As Integer
Dim CC As Long
CC = ActiveSheet.Rows.Count
For x = 1 To CC

If Cells(x, 1) <> "" Then
Cells(x, 1).Speak

End If
Next x
End Sub


Para que essa funcionalidade funcione não se esqueça de referenciar a respectiva biblioteca abaixo:



Deixe seus comentários, compartilhe este artigo!


⬛◼◾▪ Social Media ▪◾◼⬛
• FACEBOOK • TWITTER • INSTAGRAM • TUMBLR • GOOGLE+ • LINKEDIN • PINTEREST

⬛◼◾▪ Blogs ▪◾◼⬛ 

⬛◼◾▪ CONTATO ▪

Excel VBA - Consolidando Múltiplas Células em uma única Célula de Múltiplas Linhas - Consolidate Data from Different Cells into a Single Cell in Multiple Lines

Excel VBA - Consolidando Múltiplas Células em uma única Célula de Múltiplas Linhas - Consolidate Data from Different Cells into a Single Cell in Multiple Lines


Como consolidar dados de células diferentes em uma única célula em múltiplas linhas do Excel? Suponha que o endereço de um funcionário esteja atualmente dividido em diferentes células e você deseje consolidá-los numa única célula em várias linhas. Usaremos a função CHAR do Excel da seguinte maneira: 



O endereço das células acima estão divididos na células de A2 a E2 and e a fórmula abaixo consolidará e formatará numa célula simples com múltiplas linhas.

=A2&CHAR(10)&B2&"-"&C2&CHAR(10)&D2&"-"&E2

Aqui,10 é o código ANSI para um [ENTER] e mudança de linha, provendo a adequada quebra da linha dentro da célula.

Resultado:


Suponha que deseje formatar o Endereço sem a quebra de linha, apenas separando as informações por uma vírgula, use a fórmula abaixo: 

=SUBSTITUTE(C3,CHAR(10),", ") 



Deixe seus comentários, compartilhe este artigo!


⬛◼◾▪ Social Media ▪◾◼⬛
• FACEBOOK • TWITTER • INSTAGRAM • TUMBLR • GOOGLE+ • LINKEDIN • PINTEREST

⬛◼◾▪ Blogs ▪◾◼⬛ 

⬛◼◾▪ CONTATO ▪

Excel VBA - Obtendo o Endereço de Referência das células de um Range - How to Get the Cell Address of a Matching Column and Row in Excel

Excel VBA - Obtendo o Endereço de Referência das células de um Range - How to Get the Cell Address of a Matching Column and Row in Excel


Esta função do Excel permite obter o endereço correspondente das colunas e linhas na planilha Excel da guia de origem, como a seguir:


Endereço dos Campos (células) na fonte:
 =(ADDRESS(1,MATCH(A2,Data!$A$1:$AH$1,0),1))

Campo (célula) número da LINHA:
 =MID(B2,FIND("$",B2,2)+1,LEN(B2)-FIND("$",B2,2))

Campo (célula) número da COLUNA:
 =MATCH(A2,Data!$A$1:$AH$1,0)

Campo (célula) nome do índice da coluna:
 =LEFT(B2,FIND("$",B2,2)-1)



Deixe seus comentários, compartilhe este artigo!


⬛◼◾▪ Social Media ▪◾◼⬛
• FACEBOOK • TWITTER • INSTAGRAM • TUMBLR • GOOGLE+ • LINKEDIN • PINTEREST

⬛◼◾▪ Blogs ▪◾◼⬛ 

⬛◼◾▪ CONTATO ▪

Excel VBA - Inserindo o conteúdo de um Range num ComboBox ActiveX

Inserindo o conteúdo de um Range num ComboBox ActiveX


Este código VBA adicionará o conteúdo do intervalo da planilha Excel no ComboBox ActiveX com DropButtonClick

Private Sub Cmb_FiscQtr_DropButtonClick()
    Dim WS As Worksheet
    Dim r As Long
    Dim n As Long
    Dim x As Long
    Dim y As Long
    
    Dim OLE_Obj As Object    
    Dim FQ_Items() As Variant

    Set WS = Worksheets("Test")
    Set OLE_Obj = WS.OLEObjects("Cmb_FiscQtr").Object
    On Error Resume Next

'O Range onde estão os valores      
    Let x = WS.Range("F65536").End(xlUp).Row

'Redimensionando o tamanho do Array
    ReDim FQ_Items(1 To x - 9)

'Adicioando os trimestres fiscais do range no Combobox        
    Let FQ_Items(1) = "(All)"
    Let n = 2

    For r = 11 To x
        Let FQ_Items(n) = WS.Cells(r, 6).Value
        Let n = n + 1
    Next r

    Let Cmb_FiscQtr.List = FQ_Items
    
 'Mostrando os itens no Combox Box
    Let y = OLE_Obj.ListCount

    For x = 0 To (y - 1)
    Let OLE_Obj.ListIndex = x
    MsgBox OLE_Obj.List(x)
    Next x
    
'Deletando os Itens do Arrary
    Erase FQ_Items
    Set WS = Nothing

End Sub
Deixe seus comentários, compartilhe este artigo!


⬛◼◾▪ Social Media ▪◾◼⬛
• FACEBOOK • TWITTER • INSTAGRAM • TUMBLR • GOOGLE+ • LINKEDIN • PINTEREST

⬛◼◾▪ Blogs ▪◾◼⬛ 


⬛◼◾▪ CONTATO ▪

eBooks VBA na AMAZOM.com.br

LinkWithinBrazilVBAExcelSpecialist

Related Posts Plugin for WordPress, Blogger...

Vitrine