ScreenUpdating czyli zamrażanie i odświeżanie ekranu

Application.ScreenUpdating to właściwość obiektu Application odpowiadająca za zamrażanie/odświeżanie ekranu.

kliknij, aby powiększyć

Właściwość ta stosowana jest najczęściej przy działaniu procedury kodu VBA aktualizującej dane w pętli, pobieraniu danych zewnętrznych i wstawianiu ich do arkusza/y itp. Jeżeli proces ten trwa dłużej może pojawić się mało przyjemne migotanie ekranu.
Zdecydowanie lepiej w takim przypadku wyłączyć odświeżanie ekranu i włączyć jej po zakończeniu procedury.

Właściwość ta przyjmuje wartość typu Booelan:

      • Application.ScreenUpdating=False
        zamrożenie ekranu
      • Application.ScreenUpdating=True
        włączenie odświeżania

Kurs Programowanie VBA w Excelu dla zaawansowanych

 

DisplayAlerts czyli wyświetlanie ostrzeżeń

Application.DisplayAlerts to właściwość obiektu Application odpowiadająca za włączenie/wyłączenie komunikatów systemowych Excela.

kliknij, aby powiększyć

Komunikaty takie pojawiają się m.in przy usuwaniu arkuszy, zamykaniu plików bez zapisania itp.

kliknij, aby powiększyć

Przyjmuje wartość typu Booelan:

      • Application.DisplayAlerts=False
        wyłączenie ostrzeżeń
      • Application.DisplayAlerts=True
        włączenie ostrzeżeń

Domyślnie komunikaty są włączone.


Kurs Excel programowanie w VBA

 

Obiekt VBA Application

Obiekt VBA Application to kontener zawierający odwołania właściwie do wszystkiego, co zawiera Excel i nie tylko.

kliknij, aby powiększyć

Ma swoje właściwości i metody, z których wiele wymaga osobnego omówienia. Najczęściej stosowane to:

METODY

WŁAŚCIWOŚCI

sukcesywnie będą się tu pojawiać.

 


Kurs Excel programowanie w VBA

 

Funkcje arkuszowe VBA

Funkcje arkuszowe VBA to funkcje Excela, dostępne w ramach obiektu VBA Worksheet.Function. Działają tak samo, jak bezpośrednio w arkuszu.

Właściwie WorksheetFunction jest częścią obiektu Application, ale jak wiele innych może być stosowany samodzielnie.
Czyli można stosować w kodzie zarówno:
Application.WorksheetFunction….
jak i
WorksheetFunction…

Nazwy funkcji w ramach obiektu są w języku angielskim.


Kurs Makra i VBA w Excelu dla początkujących

 

Przenoszenie pliku

Jak szybko przenieść czyli usunąć w jednym miejscu i przenieść w inne miejsce na dysku) plik? Jednym ze  sposobów  jest wykorzystanie obiektu FileSystem.Object.
Służy do tego metoda FileSystem.Object.MoveFile
Ma ona kilka parametrów wejściowych:

    • Object – nazwa obiektu zdefiniowanego jako obiekt FSO. Argument obowiązkowy.
    • Source – nazwa pliku do skopiowania. Argument obowiązkowy, ale dozwolone są znaki zastępcze w nazwie.
    • Destination – nazwa pliku po przeniesieniu. Argument obowiązkowy.

Zarówno stara jak i nowa nazwa pliku musi być pełna czyli z z dokładnym podaniem dysku i katalogu.

Przykładowy kod  może wyglądać tak:

Public Sub PrzeniesPlik()
Dim FSO As Object
Dim StaryPlik As String
Dim
NowyPlik As String
StaryPlik = „C:\Folder1\plik.png”
NowyPlik = „C:\Folder2\plik.png”
Set FSO = CreateObject(„Scripting.FileSystemObject”)
FSO.MoveFile StaryPlik, NowyPlik
Set FSO = Nothing
End Sub

Warto też  wcześniej zwrócić uwagę na sprawdzenie, czy plik do przeniesienia istnieje. Jeżeli nie, to w trakcie wykonywania procedury wystąpi błąd wykonania 53.


Kurs Excel - makra i VBA dla początkujących