Vba: jak używać istext do sprawdzania, czy komórka jest tekstem
Aby sprawdzić, czy dana komórka zawiera tekst, możesz użyć metody IsText w VBA.
Funkcja ta zwróci True jeśli wartość danej komórki zostanie rozpoznana jako tekst.
W przeciwnym razie funkcja zwróci False .
Oto typowy sposób wykorzystania tej funkcji w praktyce:
SubCheckText ()
Dim i As Integer
For i = 1 To 9
If IsText(Range(" A " & i)) = True Then
Range(" B " & i) = " Cell is Text "
Else
Range(" B " & i) = " Cell is Not Text "
End If
Next i
End Sub
To konkretne makro sprawdzi, czy każda komórka w zakresie A1:A9 jest tekstem.
Jeśli komórka jest tekstem, wówczas w odpowiedniej komórce w zakresie B1:B9 zostanie zwrócony komunikat „Komórka to tekst”.
Jeśli komórka nie jest tekstem, zamiast tego zostanie zwrócona informacja „Komórka nie jest tekstem”.
Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.
Przykład: Jak używać IsText w VBA
Załóżmy, że w Excelu mamy następującą kolumnę wartości:
Załóżmy, że chcemy sprawdzić, czy każda komórka w kolumnie A jest tekstem.
W tym celu możemy utworzyć następujące makro:
SubCheckText ()
Dim i As Integer
For i = 1 To 9
If IsText(Range(" A " & i)) = True Then
Range(" B " & i) = " Cell is Text "
Else
Range(" B " & i) = " Cell is Not Text "
End If
Next i
End Sub
Kiedy uruchomimy to makro, otrzymamy następujące dane wyjściowe:
Kolumna B wyświetla dane wyjściowe, które informują nas, czy każda pasująca komórka w kolumnie A jest rozpoznawana jako tekst.
Należy pamiętać, że komórki zawierające zarówno tekst, jak i liczby, są rozpoznawane jako tekst.
Aby komórka została rozpoznana jako liczba, musi zawierać tylko liczby.
Uwaga : Pełną dokumentację funkcji VBA IsText można znaleźć tutaj .
Dodatkowe zasoby
Poniższe samouczki wyjaśniają, jak wykonywać inne typowe zadania w VBA:
Jak przekonwertować ciąg na int w VBA
Jak przekonwertować ciąg na podwójny w VBA
Jak sprawdzić, czy ciąg zawiera inny ciąg w VBA