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.
Formatowanie warunkowe w Excelu to bardzo obszerne narzędzie z wieloma możliwościami wizualizacji danych. Jednym z najprostszych jest sposobów jest formatowanie wstawiające do komórki paski danych.
Najprościej można pokazać to na przykładzie.
Załóżmy, że mamy arkusz z średnimi temperaturami powietrza. Zaznaczamy zakres temperatur i na karcie Narzędzia główne wybieramy Formatowanie warunkowe:
Efekt jest widoczny od razu.
Oczywiście takie formatowanie warunkowe można zmienić, dostosowując je do własnych potrzeb. Z menu formatowania warunkowego wybieramy Zarządzaj regułami, odszukujemy wprowadzoną regułą i przechodzimy do jego edycji.
W okienku edycji widać poszczególne opcje do wyboru. Możemy je zmieniać tak, jak nam się podoba.
Po zmianie kolorów, nie zapominajmy o wartościach ujemnych.
W pliku Excela czasami pojawia się konieczność wstawienia zdjęć. Ubocznym skutkiem tego jest jednak znaczne powiększenie rozmiaru pliku. Co można zrobić w takim przypadku? Wskazana jest kompresja wstawionych obrazków.
Typ logiczny.
Przyjmuje dwie wartości: True – prawda False – fałsz
Integer
typ całkowity.
Obejmuje liczby całkowite z zakresu -32 768 do 32 767
Long
Typ całkowity długi.
Obejmuje liczby całkowite z zakresu -2 147 483 648 do
2 147 483 647
Currency
Typ wautowy.
Obejmuje liczby rzeczywiste z 15 cyfr przed i 4 po przecinku
Single
Typ rzeczywisty pojedynczej precyzji.
Obejmuje liczby rzeczywiste z zakresu:
od -3.402823 E38 do -1.401298E-45
oraz od 1.401298E-45 do 3.402823E38
Double
Typ rzeczywisty podwójnej precyzji.
Obejmuje liczby rzeczywiste z zakresu:
od -1.79769313486231E308 do -4.94065645841247E-324 oraz od 4.94065645841247E-324 do 1.79769313486232E308
Date
Typ daty.
Obejmuje daty od 1 stycznia 100r. do 31 grudnia 9999r.
String
Typ łańcuchowy często nazywany także tekstowym.
Obejmuje znaki z klawiatury – może ich być od zera do 2 bilionów
Variant
Typ ogólny.
Zadeklarowanie zmiennej jako typ Variant jest w zasadzie jednoznaczne z brakiem deklaracji typu. Dostęp do danych jest jednak dłuższy i spowalnia program.
Błąd ten pojawia się w sytuacji, gdy następuje odwołanie do pliku lub folderu, który nie istnieje. Wystąpi także przy próbie utworzenia folderu, który już jest zapisany.
Najlepszym zabezpieczeniem kodu jest tu po prostu wcześniejsze sprawdzenie, czy dany plik/folder istnieje.
Przykładowy kod może wyglądać tak:
Public Sub NowyKatalog() If Dir(“C:\ABCD”, vbDirectory) = “” Then ‘(1)
MkDir (“C:\ABCD”) ‘(2) End If` ‘(3) End Sub
W linii (1) następuje sprawdzenie, czy istnieje katalog. Jeżeli nie – następuje przejście do linii (2), jeżeli tak – do (3).
Przed nami rok wyborczy -z pewnością więc może się przydać oparty o metodę D’Hondta kalkulator wyborczy. Oczywiście w Excelu. Nie zawiera makr i kodu VBA.
Plik jest do pobrania tu:
kliknij obrazek, aby zobaczyć go w większej rozdzielczości
Do wypełnienia są żółte pola. W komórce D1 wpisujemy liczbę mandatów do podziału, w komórkach C4:M4 – T lub N dla oznaczenia koalicji, a w C5:M5 – liczbę głosów uzyskanych przez poszczególne partie. I już całą reszta jest obliczana automatycznie.
Wiersz 7 zawiera formułę sprawdzającą, czy został przekroczony prób wyborczy: 5% dla partii, 8 procent dla koalicji.
Formuła w komórce np.C7 to: =JEŻELI(C4=”T”;JEŻELI(C6>=8%;”T”;”N”);JEŻELI(C6>=5%;”T”;”N”))
Metoda H’ondta polega na tym, że w pierwszym kroku wstawiamy do tabeli wszystkie wyniki (czyli wartości z wiersza 4), w kolejnym wierszu – dzielimy te wartości przez 2, w następnym – przez 3 itd.
Wyniki tych obliczeń są umieszczone od wiersza 14 w dół.
Formuły zawarte w wierszu 14 – to:
np. komórka C14: =JEŻELI(LUB(C5=””;C7=”N”);0;C5) – czyli jeżeli w tabeli z danymi w komórce C5 nie ma wartości lub w komórce C7 jest wartość N -w komórce C14 jest wartość 0. Jeżeli żaden z tym warunków nie jest spełniony – wstawiana jest tam wartość z komórki C5 (czyli liczba otrzymanych głosów)
Od wiersza 15 – formuła wygląda tak:
np. w komórce C9: =JEŻELI(LUB(C14=””;C14<1);””;C$14/$B15)
– jeżeli w komórce C14 jest wartość większa od 1- jest ona dzielona przez wartość w komórce B15 czyli 2. Analogicznie – w kolejnych wierszach.
Natomiast w komórce B13 jest formuła: =MAX.K(C14:M500;D1))
Wyznacza ona k-tą wartość maksymalną z zakresu obliczeń. Wartość k jest wyznaczona przez liczbę mandatów do podziału – zapisana jest w komórce D1. Wartości większe i równe tej wartości minimalnej są oznaczone w obliczeniach na jasnoniebiesko. Tu wykorzystałam formatowanie warunkowe:
W wierszu 8 jest wyznaczona liczba mandatów dla danej partii. Zastosowałam tu formułę:
=JEŻELI(C7=”T”;LICZ.JEŻELI(C14:C500;”>=” &$B13);0)
Następuje tu sprawdzenie – ile w zakresie obliczeń dla danej kolumny występuje liczb niemniejszych od B13.