Korzystam z poniższego kodu, aby przyciąć niektóre "puste komórki", które zawierają spację. Chodzi o to, że zajmuje to zbyt dużo czasu, podobnie jak pętla do każdej komórki. Chcę usunąć spacje (te na początku i końcu, a nie na środku) ze wszystkich komórek.TRIM funkcja/usuwanie spacji z komórek przy użyciu VBA
Czy istnieje łatwiejszy sposób, w jaki mogę zastosować wszystkie naraz?
For a = 1 To ScenarioTableLastRow
For f = 1 To ScenarioTableLastColumn
If Cells(a, f) <> "" Then
Cells(a, f) = Excel.Application.Trim(Cells(a, f))
End If
Next f
Next a
Czy ustawiasz 'Application.ScreenUpdating = False' przed uruchomieniem tego? To może drastycznie przyspieszyć kod VBA. Po prostu nie zapomnij ustawić 'Application.ScreenUpdating = True' na końcu twojego kodu. – TylerH
@ TylerH głównym wąskim gardłem tutaj jest czytanie i pisanie pojedynczych komórek, ale jeśli masz zamiar zacząć zmieniać 'ScreenUpdating', powinieneś przynajmniej przywrócić go do tego, co to * było * zanim twoja procedura porwała go. – ThunderFrame
@ThunderFrame Tak, dlatego dlaczego powiedziałem ustawić powrót do wartości true na końcu twojego kodu. – TylerH