Lewa funkcja VBA - Jak korzystać z lewej funkcji Excel VBA?

Spisie treści

Excel VBA w lewo

VBA Left jest również jedną z funkcji arkusza sklasyfikowanych pod funkcjami tekstowymi, które są używane w VBA z aplikacją. skoroszytu, zwraca określoną liczbę znaków z lewej części ciągu.

Niektóre funkcje programu Excel są również zintegrowane z VBA. Ze wszystkich wielu funkcji tekstowych, VBA LEFT jest jedną z tych funkcji, których używamy dość często niż inne formuły.

Jeśli znasz funkcję LEFT programu Excel, funkcja LEWY VBA jest dokładnie taka sama. Może wyodrębnić znaki z lewej strony ciągu lub wartości podanej przez użytkownika.

Składnia funkcji LEFT jest dokładnie taka sama, jak w przypadku funkcji arkusza.

Ma dwa argumenty.

  • Ciąg: to nic innego, jak wartość lub odwołanie do komórki. Z tej wartości chcemy wyciąć znaki.
  • Długość: ile znaków chcesz wyodrębnić z podanego ciągu . Powinna to być wartość liczbowa.

Jak korzystać z lewej funkcji Excel VBA?

Przykład 1

Załóżmy, że masz słowo „Sachin Tendulkar” i chcesz tylko pierwszych 6 znaków tego słowa. Pokażemy, jak wyodrębnić z lewej strony za pomocą funkcji LEFT w VBA.

Krok 1: Utwórz nazwę makra i zdefiniuj zmienną jako ciąg.

Kod:

Sub Left_Example1 () Dim MyValue As String End Sub

Krok 2: Teraz przypisz wartość do tej zmiennej

Kod:

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

Krok 3: Otwórz lewą funkcję.

Kod:

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

Krok 4: Pierwszym argumentem jest określenie, jaki jest ciąg lub wartość. Nasza wartość to „Sachin Tendulkar”.

Kod:

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

Krok 5: Długość to nic innego jak liczba znaków, których potrzebujemy od lewej. Potrzebujemy 6 znaków.

Kod:

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

Krok 6: Pokaż wartość w VBA MsgBox.

Kod:

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

Krok 7: Uruchom makro za pomocą klawisza F5 lub ręcznie za pomocą opcji uruchamiania, aby uzyskać wynik w oknie komunikatu.

Wynik:

Zamiast wyświetlać wynik w oknie komunikatu, możemy zapisać ten wynik w jednej z komórek w naszym arkuszu programu Excel. Musimy tylko dodać odwołanie do komórki i wartość zmiennej.

Kod:

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

Teraz, jeśli uruchomisz ten kod, otrzymamy wartość z komórki A1.

Przykład # 2 - LEWO z innymi funkcjami

W powyższym przypadku bezpośrednio podaliśmy długość potrzebnych znaków z lewej strony, ale jest to bardziej odpowiednie dla jednej lub dwóch wartości. Załóżmy, że poniżej znajduje się lista wartości, które masz w arkuszu Excela.

W każdym przypadku znaki imion różnią się od siebie; nie możemy bezpośrednio określić liczby znaków, których potrzebowaliśmy z każdej nazwy.

Tutaj pojawia się piękno innych funkcji. Aby dynamicznie podawać liczbę znaków, możemy skorzystać z funkcji „VBA Instr”.

W powyższym zestawie nazw potrzebujemy wszystkich znaków od lewej, aż dojdziemy do znaku spacji. Więc funkcja Instr może zwrócić te wiele znaków.

Krok 1: Podobnie, rozpocznij nazwę makra programu Excel i zdefiniuj zmienną jako ciąg.

Kod:

Sub Left_Example2 () Dim FirstName As String End Sub

Krok 2: Przypisz wartość do zmiennej za pomocą funkcji LEFT.

Kod:

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

Krok 6: Uruchom ten kod ręcznie lub za pomocą F5 otrzymamy imię.

Mamy imię dla jednej nazwy, ale mamy też kilka innych. Nie możemy napisać 100 linii kodu do wyodrębnienia, więc jak to wyodrębnimy?

W tym miejscu pojawia się piękno pętli. Poniżej znajduje się kod pętli, który może wyeliminować wszystkie niechciane kroki i może wykonać zadanie w 3 wierszach.

Kod:

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) Cells (i, 2) .Value = FirstName Next i End Sub
Uwaga: Funkcja Instr również zwraca spację, więc musimy odjąć 1 z wyniku Instr.

Jeśli uruchomisz ten kod, otrzymamy wartości imienia.

Wynik:

Rzeczy do zapamiętania

  • Lewy może wyciągać tylko z lewej.
  • Funkcja VBA Instr znajduje pozycję dostarczonego znaku w ciągu.

Interesujące artykuły...