Funkcja Replace VBA – Jak zamienić ciąg znaków

Ostatnio zaktualizowano: 17 listopada, 2017 przez admin

1. Funkcja Replace VBA – Opis

Funkcja Replace VBA służy do podmiany ciągów znaków. Jeśli chcemy zamieć wyraz bądź fragment tekstu na inny, korzystamy właśnie z funkcji Replace. Funkcja posiada dodatkowe argumenty, za pomocą których możemy określi także ile wystąpień ciągów znaków ma zostać podmienionych. Funkcję VBA Replace możemy porównać do funkcjonalności Znajdź i zamień w arkuszu Excel.

2. Funkcja VBA Replace – Składnia

'datatalk.pl
Replace(Expression As String, Find As String, Replace As String, [Start As Long = 1], [Count As Long = -1], [Compare As VbCompareMethod = vbBinaryCompare]) As String

Expression: Ciąg znaków, w którym szukamy zdań, wyrazów lub znaków do podmiany.

Find: Ciąg znaków, którego szukamy i chcemy zamienić na inny.

Replace: Ciąg znaków, którym chcemy zastąpić szukany tekst.

Start: Argument opcjonalny. Pozycja w tekście od której zaczynamy wyszukiwanie

Count: Argument opcjonalny. Liczba wystąpień ciągu znaków, który chcemy zastąpić

Compare: Argument opcjonalny. Metoda porównania ciągów znaków. Od tego argumentu zależy też to, czy w szukaniu uwzględniamy wielkość liter.

StałaWartośćOpis
vbBinaryCompare0Porównanie binarne. Uwzględnia wielkość znaków.
vbTextCompare1Porównanie tekstowe. Nie uwzględnia wielkości znaków

Zwrot funkcji: String / Wartość wartość tekstowa.

3. Funkcja VBA Replace – Przykład

Jak używać funkcji Replace w VBA Excel? Poniżej przykłady użycia funkcji Replace w Edytorze VisualBasic.

Przykład 1: Przykład użycia funkcji Replace VBA – wynik w oknie MsgBox.

'datatalk.pl
Dim strValue As String
strValue = "Nauka funkcji VBA. Nauka funkcji"
MsgBox Replace(strValue, "funkcji", "metod", 1, 1, vbTextCompare)
MsgBox Replace(strValue, "funkcji", "metod", 1, , vbTextCompare)

Przykład 2: VBA Replace – przykład funkcji – wynik w arkuszu Excel.

'datatalk.pl
Dim strValue2 As String
strValue2 = "Nauka funkcji VBA. Nauka funkcji"
Range("A1") = Replace(strValue2, "funkcji", "metod", 1, 1, vbTextCompare)
Range("A2") = Replace(strValue2, "funkcji", "metod", 1, , vbTextCompare)
Funkcje VBA Excel – Funkcja Replace VBA
Funkcje VBA Excel – Funkcja Replace VBA

4. Funkcja VB Replace – Dodatkowe informacje

  • Jeśli chcemy, by program nie uwzględniał wielkości znaków podczas wyszukiwania powinniśmy uzupełnić argument Compare wartością vbTextCompare.
  • Jeśli chcemy, by zamiana znaków zaczynała się np od 10 znaku w tekście powinniśmy skorzystać z argumentu Start uzupełniając go np wartością 10.
  • W przypadku, gdy chcemy zamienić kilka pierwszych wystąpień szukanej frazy w tekście, a nie wszystkie, korzystamy z argumentu Count wprowadzając liczbę wystąpień, które chcemy zamienić.

5. Funkcja Replace VisualBasic – Gdzie stosować?

Funkcję możemy stosować w: Excel 2003, Excel 2007, Excel 2010, Excel 2013, Excel 2016.

Artykuł jest częścią listy funkcji VBA Excel. Listę wszystkich funkcji VBA znajdziesz pod tym adresem: Funkcje VBA.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

%d bloggers like this: