Programowanie G³ówna arrow vbs arrow Formu³y i odwo³ania.


Formu³y i odwo³ania.
Formu³y i odwo³ania.

W poprzednich artyku³ach dowiedzieli¶my siê jak wpisywaæ ró¿ne typy danych do komórek oraz jak je formatowaæ. Jak zapisywaæ obszary kiedy nie wiemy co ma byæ tam wpisane i czyni to dopiero makro w czasie pracy.
Jednak jak wpisywaæ formu³y do komórek.
Nie jest to nic trudnego i ³atwo zrozumieæ zasadê wpisywania formu³ odwo³uj±cych siê do innych komórek na podstawie prostych przyk³adów.

Za³ó¿my, ¿e w polu E4 mamy wpisana liczbê 2 i chcemy, aby w nastêpnym polu pojawi³ siê wynik jej mno¿enia przez 2, jednak nie wiemy jaka liczba jest w E4 i co teraz. Musimy wpisaæ odpowiedni± formu³ê, która bêdzie siê odwo³ywa³a do danego pola.
1
2
3
4

Range("F4").Select
ActiveCell.FormulaR1C1 = "=RC[-1]*2"

W komórce po prawej wpisujemy odwo³anie do komórki le¿±cej w poprzedniej kolumnie i mno¿ymy tamt± warto¶æ *2.
R oznacza wiersz, do którego siê odwo³ujemy a C do kolumny, przyjmuj± one domy¶lnie warto¶æ zgodn± z aktualnie zaznaczon± komórk±, jednak obok C znajduje siê, w [-1], co sprawia, ¿e je¶li aktualna komórka to F4 to odwo³anie F[-1]4 (UWAGA, zauwa¿, ¿e przy takim okre¶laniu zmienia siê kolejno¶æ) wygl±da w ostatecznej formie E4, czyli do komórki, w której wpisana jest jaka¶ liczba.

Aby u³atwiæ zrozumienie dzia³ania odwo³añ zaprezentuje tu jeszcze jeden prosty przyk³ad.
1
2
3
4
5
6
7
8

Range("E5").Select
ActiveCell.FormulaR1C1 = "=R[-1]C*3"
Range("D4").Select
ActiveCell.FormulaR1C1 = "=RC[1]*4"
Range("E3").Select
ActiveCell.FormulaR1C1 = "=R[1]C*5"


Spowoduje to, ¿e w komórce poni¿ej pojawi siê wynik mno¿enia podanej liczby *3.
W komórce poprzedzaj±cej pojawi siê wynik mno¿enia podanej liczby *4.
Powy¿ej pojawi siê wynik mno¿enia podanej liczby *5.

Mo¿na u¿ywaæ równie¿ specjalnych funkcji np. LICZ.JE¯ELI
Bêdzie to wygl±daæ nastêpuj±co
1
2
3
4

Range("H4").Select
ActiveCell.FormulaR1C1 = "=COUNTIF(RC[-4]:RC[-2],2)"

W komórce H4 pojawi siê liczba informuj±ca o ilo¶ci wystêpowania liczby 2.
Zauwa¿ jak podajemy zakres, wybieramy 2 graniczne komórki w taki sam sposób jak przy odwo³aniu.

site copyright © http://www.e-kursy.com
pozycjonowanie i optymalizacja | smieszne opisy | forum | odzyskiwanie danych Szczecin | projektowanie stron www warszawa
panele pod³ogowe | Weranda | ubieranki | Telefony Motorola | alveo | meble kuchenne | prace magisterskie | Kamery | Bluetooth | Tworzenie Stron Czêstochowa