Função esquerda do VBA - Como usar a função esquerda do Excel VBA?

Excel VBA à esquerda

O VBA à esquerda também é uma das funções de planilha categorizadas nas funções de texto que são usadas no VBA com o aplicativo. método de planilha, ele retorna o número especificado de caracteres da parte esquerda da string.

Algumas das funções do Excel também estão integradas ao VBA. De todas as funções de texto, VBA LEFT é uma das funções que usamos com bastante frequência do que outras fórmulas.

Se você conhece a função ESQUERDA do Excel, a função ESQUERDA do VBA é exatamente a mesma. Ele pode extrair os caracteres do lado esquerdo da string ou do valor fornecido pelo usuário.

A sintaxe da função LEFT é exatamente a mesma da função de planilha.

Tem dois argumentos.

  • String: Nada além do valor ou referência da célula. A partir desse valor, estamos procurando dividir os personagens.
  • Comprimento: quantos caracteres você deseja extrair da string fornecida. Este deve ser um valor numérico.

Como usar a função esquerda do Excel VBA?

Exemplo 1

Suponha que você tenha a palavra “Sachin Tendulkar” e queira apenas os 6 primeiros caracteres dessa palavra. Mostraremos como extrair da esquerda usando a função LEFT no VBA.

Etapa 1: Crie um nome de macro e defina a variável como String.

Código:

Sub Left_Example1 () Dim MyValue As String End Sub

Etapa 2: Agora atribua um valor a esta variável

Código:

Sub Left_Example1 () Dim MyValue As String MyValue = End Sub

Passo 3: Abra a função LEFT.

Código:

Sub Left_Example1 () Dim MyValue As String MyValue = Left (End Sub

Etapa 4: O primeiro argumento é dizer qual é a string ou valor. Nosso valor aqui é “Sachin Tendulkar”.

Código:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", End Sub

Etapa 5: o comprimento nada mais é do que quantos caracteres precisamos a partir da esquerda. Precisamos de 6 personagens.

Código:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) End Sub

Etapa 6: Mostrar o valor na MsgBox do VBA.

Código:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) MsgBox MyValue End Sub

Etapa 7: execute a macro usando a tecla F5 ou manualmente por meio de uma opção de execução para obter o resultado em uma caixa de mensagem.

Resultado:

Em vez de mostrar o resultado em uma caixa de mensagem, podemos armazenar esse resultado em uma das células em nossa planilha do Excel. Precisamos apenas adicionar a referência da célula e o valor da variável.

Código:

Sub Left_Example1 () Dim MyValue As String MyValue = Left ("Sachin Tendulkar", 6) Range ("A1"). Value = MyValue End Sub

Agora, se você executar este código, obteremos o valor na célula A1.

Exemplo # 2 - ESQUERDA com outras funções

No caso acima, fornecemos diretamente o comprimento dos caracteres de que precisamos da direção esquerda, mas isso é mais adequado para um ou dois valores. Suponha que a seguir está a lista de valores que você tem em sua planilha do Excel.

In each case, first name characters are different from one to another; we cannot directly specify the number of characters we needed from each name.

This is where the beauty of other functions will come into the picture. In order to supply the number of characters dynamically, we can use the “VBA Instr” function.

In the above set of names, we need all the characters from the left until we reach space character. So Instr function can return those many characters.

Step 1: Similarly, start an excel macro name and define a variable as a string.

Code:

Sub Left_Example2() Dim FirstName As String End Sub

Step 2: Assign the value to the variable through the LEFT function.

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left( End Sub

Step 3: Here, we need to refer the cell to get the value from the cells. So write the code as CELLE (2,1).Value.

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left(Cells(2,1).Value, End Sub

Step 4: The next thing is how many characters we need. After applying the LEFT function, don’t enter the length of the characters manually. Apply the Instr function.

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left(Cells(2, 1).Value, InStr(1, Cells(2, 1).Value, " ")) End Sub

Step 5: Store this result in the B2 cell. So the code is CELLS (2,2).value = FirstName

Code:

Sub Left_Example2() Dim FirstName As String FirstName = Left(Cells(2, 1).Value, InStr(1, Cells(2, 1).Value, " ")) Cells(2, 2).Value = FirstName End Sub

Etapa 6: Execute este código manualmente, ou por meio de F5, obteremos o primeiro nome.

Temos o primeiro nome para um nome, mas também temos vários outros nomes. Não podemos escrever 100 linhas de código para extrair, então como extraímos?

É aqui que a beleza dos loops entra em cena. Abaixo está o código de loop, que pode eliminar todas as etapas indesejadas e pode fazer o trabalho em 3 linhas.

Código:

Sub Left_Example2 () Dim FirstName As String Dim i As Integer For i = 2 To 9 FirstName = Left (Cells (i, 1) .Value, InStr (1, Cells (i, 1) .Value, "") - 1) Células (i, 2) .Value = FirstName Next i End Sub
Observação: a função Instr também retorna o caractere de espaço, portanto, precisamos menos 1 no resultado de Instr.

Se você executar este código, obteremos os valores do nome.

Resultado:

Coisas para lembrar

  • A esquerda pode extrair apenas da esquerda.
  • A função VBA Instr encontra a posição do caractere in fornecido na string.

Artigos interessantes...