Excel aufmöbeln mit VBA
Excel aufmöbeln mit VBA
Excel aufmöbeln mit VBA
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
•
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
• <br />
<br />
• <br />
<br />
<br />
<br />
• <br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
•
• <br />
• <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
• <br />
<br />
<br />
<br />
• <br />
<br />
+ <br />
• <br />
<br />
<br />
← → ↑ ↓ <br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
•
• <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ <br />
<br />
<br />
+
• <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ <br />
<br />
<br />
+
+
• <br />
<br />
<br />
• <br />
<br />
•
• <br />
<br />
<br />
• <br />
<br />
•
+ <br />
+ <br />
+ +<br />
<br />
<br />
−−→ −−→ <br />
⇑ +−−→ −−→ <br />
<br />
+−−→ −−→ ⇑ + +−−→ −−→ <br />
+−−→ −−→ <br />
<br />
<br />
<br />
<br />
+
• <br />
<br />
<br />
<br />
<br />
•
• <br />
<br />
<br />
<br />
←↪ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ ←↪
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ <br />
+ ⇑ + <br />
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
• <br />
•
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ <br />
+ ⇑ + <br />
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
• <br />
•
← → ↑ ↓ <br />
+ ←
+ ← <br />
+ ↑ <br />
+ ↓ <br />
↑ <br />
↓ <br />
+ ↑ <br />
+ ↓ <br />
<br />
+ <br />
+ <br />
+ ↑ <br />
+ ↓
+ ←↪<br />
<br />
<br />
<br />
<br />
+
⇑ <br />
← → ↑ ↓ <br />
<br />
⇑ + <br />
+ <br />
⇑ <br />
<br />
⇑ ⇑ + <br />
⇑<br />
⇑ +
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e
⇑
+−−→ −−→
+−−→ −−→
+−−→ −−→
+ <br />
<br />
←↪ <br />
<br />
<br />
<br />
<br />
+ <br />
<br />
+
+
+
+
K0<br />
r = 8 <br />
Kn = K0(1+r) n r <br />
K0 n <br />
<br />
Kn = K0(1 + nr) <br />
<br />
<br />
<br />
<br />
<br />
. . .
. . .
e e <br />
<br />
1.000 ∗ 10 + 2.000 ∗ 5 = 20.000<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
= 10 ∗ B2 + 5 ∗ C2<br />
<br />
←↪ <br />
<br />
<br />
<br />
<br />
<br />
<br />
10∗ <br />
+5∗
= 10 ∗ B2 + 5 ∗ C2<br />
<br />
e <br />
e <br />
e e <br />
<br />
<br />
<br />
<br />
= I2 ∗ B2 + I3 ∗ C2<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
= $I$2 ∗ B2 + $I$3 ∗ C2<br />
= I$2 ∗ B2 + I$3 ∗ C2.<br />
$I$2 ∗ B3 + $I$3 ∗ C3 = I$2 ∗ B3 +<br />
I$3 ∗ C3
= $H$2 ∗ B2 + $H$3 ∗ C2<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
A<br />
<br />
<br />
<br />
<br />
¡ \ \ ¡ A<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ +
m n <br />
m·n
= K2 ∗ B2 : B13 + K3 ∗ C2 : C13<br />
K2 = 20 K3 = 12 <br />
<br />
+ ⇑ + ←↪ <br />
<br />
<br />
+ ⇑ + ←↪ ←↪ <br />
<br />
<br />
<br />
+ ⇑ + ←↪ <br />
<br />
<br />
<br />
¢<br />
¢<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
= A1&B1, <br />
= A1 > B1, <br />
= A2¢(B2 ∗ C2), <br />
= A2
= <br />
= <br />
= <br />
<br />
<br />
<br />
<br />
fx
= B14/12<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e e <br />
e e
= B14/12<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e e <br />
e e
= B14/12<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e e <br />
e e
= <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
= <br />
+
=
=
n <br />
A B A m · n<br />
B n · k m · k <br />
<br />
+ ⇑ + ←↪ <br />
<br />
<br />
<br />
<br />
<br />
= <br />
+ ⇑ + ←↪ <br />
<br />
<br />
<br />
A −1 A A <br />
<br />
<br />
<br />
B = A T A A m n <br />
n m bi,j = aj,i<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
A B C D E F G H I J K L M N O<br />
A A Det(A) INDEX($A$2:$C$4;3;2)<br />
4 8 8 - 9/20 - 2/5 4/5 40 8 4 5 6<br />
5 7 11 2/5 - 1/5 - 1/10 8 7 8<br />
6 8 10 - 1/20 2/5 - 3/10 8 11 10<br />
-1<br />
A T
10 = 4 + 6 <br />
<br />
11 = 3 + 6 + 2 <br />
<br />
<br />
+ ⇑ + ←↪ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
←↪
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
A B C D E F G H I J K<br />
Kzl. Modul SWS H-Geld Kzl. Modul SWS H-Geld Kurs Hörer<br />
ana Analysis 8 60 ana Analysis 8 60 A 34<br />
la Lin. Algebra 6 40 ana Analysis 8 60 B 45<br />
cee C 6 80 la Lin. Algebra 6 40 A 56<br />
dat Datenbanken 6 70 cee C 6 80 A 67<br />
dat Datenbanken 6 70 A 45<br />
dat Datenbanken 6 70 B 37<br />
=SVERWEIS($F2;$A$2:$D$6;SPALTE()-5;FALSCH)<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
•
• <br />
<br />
<br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
•
• <br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
<br />
A B C D E F G H I J K L M N O P Q R S T U<br />
Zahlen 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20<br />
UG 4<br />
OG 8<br />
Summe 30
1 2<br />
V = .<br />
3 4<br />
<br />
<br />
<br />
+ ⇑ + ←↪ <br />
<br />
V −1 =<br />
<br />
−2 1<br />
.<br />
1, 5 −0, 5<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
A B C D E F G H I<br />
Anfangsjahr 2010<br />
Laufzeit 7<br />
Jahre 2010 2011 2012 2013 2014 2015 2016 2017<br />
Sternzeichen Igel Ratte Tiger Drachen Schwein Igel Ratte Tiger
1<br />
2<br />
3<br />
4<br />
5<br />
A B C D E F G H<br />
Anfangsdatum Wochentag Frist Ablaufsdatum Wochentag<br />
10.10.2012 Mi 10 22.10.2012 Mo<br />
=INDEX({"So"."Mo"."Di"."Mi"."Do"."Fr"."Sa"};1;WOCHENTAG(A2))<br />
=WENN(WOCHENTAG(A2)+REST(C2;7)=7;A2+C2+2;WENN(WOCHENTAG(A2)+REST(C2;7)=8;A2+C2+1;A2+C2))
n A <br />
<br />
A <br />
n <br />
i <br />
q = 1 + i<br />
t = n <br />
<br />
REN = A(q n−1 + q n−2 + · · · + 1) = Asn,<br />
sn = q n−1 + q n−2 + · · · + 1 = qn − 1<br />
,<br />
i<br />
n − 1 n − 2 <br />
REN <br />
sn <br />
<br />
RAN <br />
<br />
q −n <br />
RAN = Aq −n sn,<br />
an = q −n sn.<br />
an <br />
A i n <br />
sn an
+
+ ⇑ +
• <br />
<br />
•
←↪ + ⇑ + ←↪
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
A B C D E<br />
k Tag Monat Jahr Wochentag<br />
1 1 10 2009 Do<br />
2 2 10 2009 Fr<br />
3 3 10 2009 Sa<br />
4 4 10 2009 So<br />
5 5 10 2009 Mo<br />
6 6 10 2009 Di<br />
7 7 10 2009 Mi<br />
8 8 10 2009 Do<br />
<br />
<br />
<br />
<br />
<br />
= <br />
= <br />
= <br />
= <br />
= <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
x 2 − 2x − 3 = 0
x 5 − 2x 3 − 3 = 0<br />
<br />
x ↦→ 2x x ↦→ tan x<br />
<br />
tan x − 2x = 0. <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
x <br />
<br />
<br />
x = 0 <br />
<br />
<br />
<br />
<br />
x = 1, 16556118520721
0, 0000000001 = 10 −9<br />
<br />
10 −4
A B C D E F G H I J<br />
1<br />
2<br />
3<br />
4<br />
Monat<br />
Jan<br />
Feb<br />
Mrz<br />
Bier Limo<br />
350 2000<br />
420 2160<br />
504 2320<br />
Gewinn<br />
in Euro<br />
880,00<br />
984,00<br />
1099,20<br />
4.000<br />
3.500<br />
3.000<br />
Säulendiagramm<br />
5 Apr 604 2480 1227,20 2.500<br />
6 Mai 724 2640 1371,20 2.000<br />
7 Jun 868 2800 1534,40 1.500<br />
8 Jul 1041 2960 1720,80 1.000<br />
9 Aug 1249 3120 1935,20 500<br />
10<br />
11<br />
Sep<br />
Okt<br />
1498 3280<br />
1797 3440<br />
2182,40<br />
2469,60<br />
0<br />
12 Nov 2156 3600 2804,80<br />
13<br />
14<br />
Dez 2587 3760 3197,60<br />
Bier Limo Gewinn<br />
i E<br />
15 Heute Geburtstag Gelebte Tage Alter Uhrzeit<br />
16 07.10.2009 19.01.1971 14141 38 01:03:03<br />
17 Blatt neu berechnen: Taste F9!<br />
Feb<br />
Jan<br />
Dez<br />
Nov<br />
Okt<br />
Sep<br />
Aug<br />
Jul<br />
Jun<br />
Mai<br />
Apr<br />
Mrz<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e e <br />
e <br />
e <br />
e <br />
e
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
<br />
A B C D E F G H I<br />
Name Vorname Geschlecht Gebdat Gatte Kinder FBR Grundgehalt Gehalt<br />
Bulletti Benito M 11.02.1962 0 MaD 4.600 4.700<br />
Eisenbeiß Elfriede W 22.11.1944 Erich 0 SuF 3.450 4.000<br />
Schurigl Schorsch M 13.11.1949 0 MaD 4.800 5.100<br />
Lobedanz Lothar M 25.08.1965 Lola 1 MaD 4.700 5.100<br />
Grün Gero M 13.02.1953 0 SuF 6.000 6.350<br />
Greulich Gitta W 11.11.1972 1 MaD 4.100 4.300<br />
Gründlich Gerda W 15.12.1965 0 SuF 3.800 4.050<br />
Trauerwein Thaddäus M 11.11.1955 Trude 2 MaD 6.000 6.700<br />
Männer 26.100 Frauen 11.350 Σ 37.450 37.900<br />
SuF 13.250 Eltern 14.800 μ 4.681 5.038<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
A B C D E F<br />
Anfangsjahr Anfangsmonat Laufzeit (Monate) Endjahr Endmonat<br />
2008 6 56 2013 1<br />
7884<br />
Einkommen Gerundet Steuer Jahr Schaltjahr<br />
46299,45 46296 7884 2000 Ja<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
e <br />
e e e <br />
<br />
e e <br />
<br />
<br />
<br />
<br />
<br />
<br />
L R
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
A B C D E F G H I J K L M N O P Q R S T U V W X Y<br />
Matrix L<br />
Matrix R<br />
1 0 0 0 1 3 1 -1 1 3 1 -1 4 -2 7 -5 1 0 0 0<br />
2 1 0 0 0 -1 -1 2 2 5 1 0 -1 1 -3 2 0 1 0 0<br />
3 0 1 0 0 0 1 0 3 9 4 -3 -3 0 1 0 0 0 1 0<br />
4 -1 1 1 0 0 0 1 4 13 6 -5 -3 1 -1 1 0 0 0 1<br />
{=MMULT(L;R)} {=MINV(A)}<br />
MDET(L) 1 MDET(R) -1 MDET(A) -1<br />
A = L*R Inverse A -1<br />
{=MTRANS(A)} A<br />
1 0 0 0 1 3 2 -5 1 2 3 4 4 -2 7 -5<br />
-2 1 0 0 0 -1 -1 2 3 5 9 13 -1 1 -3 2<br />
-3 0 1 0 0 0 1 0 1 1 4 6 -3 0 1 0<br />
-3 1 -1 1 0 0 0 1 -1 0 -3 -5 -3 1 -1 1<br />
-1 =R -1 *L -1<br />
Inverse L -1<br />
Inverse R -1<br />
Matrixformeln: Strg+Umschalt+Eingabe!<br />
A* A -1<br />
(A T ) −1 <br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
A B C D E F G<br />
Preisliste Kundenliste<br />
ArtikelNr Artikel Preis KundenNr Kunde Rabatt<br />
1 Babypuder Hauchzart 4,50 1 BabyDiscount 10,00%<br />
2 Alete Spuckspinat 2,30 2 BaByHiP 4,00%<br />
3 Ohropax 1,20 3 BabyParadies 13,00%<br />
AuftragsNr ArtikelNr Artikel<br />
Auftragsposten<br />
KundenNr Kunde Anzahl Preis<br />
1 1 Babypuder Hauchzart 2 BaByHiP 12 51,84<br />
2 1 Babypuder Hauchzart 1 BabyDiscount 120 486,00<br />
1 2 Alete Spuckspinat 2 BaByHiP 13 28,70<br />
3 3 Ohropax 3 BabyParadies 800 835,20<br />
Umsatzliste<br />
KundenNr Kunde Gesamter Umsatz<br />
1 BabyDiscount 486,00<br />
2 BaByHiP 80,54<br />
3 BabyParadies 835,20
K0 i n <br />
<br />
<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
A B C D E F G H<br />
Kapital Zins Laufzeit Zeit Kexp Keinfach Unterschied<br />
5000,00 8,00% 5 01.01.1999 5.000,00 5.000,00 0,00<br />
01.01.2000 5.400,00 5.400,00 0,00<br />
01.01.2001 5.832,00 5.800,00 32,00<br />
01.01.2002 6.298,56 6.200,00 98,56<br />
01.01.2003 6.802,44 6.600,00 202,44<br />
01.01.2004 7.346,64 7.000,00 346,64<br />
<br />
<br />
<br />
<br />
<br />
Zins <br />
1<br />
2<br />
3<br />
4<br />
5<br />
A B C D E F G H I J K<br />
Vertragsgrundlagen<br />
Wert<br />
Zins 0,0500 Anfangs- Anfangs- Anzahl End- End- Zahltermine Monatlicher<br />
Abschlusskosten 0,0400 jahr monat Monate jahr monat pro Jahr Zahlbeitrag<br />
Monatsfaktor 1,00407 2008 10 38 2011 11 1 250<br />
<br />
MonF aktor = (1 + Zins) (1/12) .
alpha <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
19<br />
20<br />
21<br />
22<br />
23<br />
24<br />
25<br />
26<br />
27<br />
A B C D E F G H I J K L M<br />
k<br />
Jahr<br />
Monat<br />
Zahlbeitrag<br />
Alphakosten<br />
Kapital<br />
k<br />
Jahr<br />
Monat<br />
Zahl<br />
beitrag<br />
Alphakosten<br />
1 2008 10 250 10,83 239,17 1 2008 10 3000 130,00 2.870,00<br />
2 2008 11 250 10,83 479,31 2 2008 11 0 0,00 2.881,69<br />
3 2008 12 250 10,83 720,43 3 2008 12 0 0,00 2.893,43<br />
4 2009 1 250 10,83 962,53 4 2009 1 0 0,00 2.905,22<br />
5 2009 2 250 10,83 1.205,62 5 2009 2 0 0,00 2.917,06<br />
6 2009 3 250 10,83 1.449,70 6 2009 3 0 0,00 2.928,94<br />
7 2009 4 250 10,83 1.694,77 7 2009 4 0 0,00 2.940,87<br />
8 2009 5 250 10,83 1.940,84 8 2009 5 0 0,00 2.952,86<br />
9 2009 6 250 10,83 2.187,91 9 2009 6 0 0,00 2.964,89<br />
10 2009 7 250 10,83 2.435,99 10 2009 7 0 0,00 2.976,97<br />
11 2009 8 250 10,83 2.685,09 11 2009 8 0 0,00 2.989,09<br />
12 2009 9 250 10,83 2.935,19 12 2009 9 0 0,00 3.001,27<br />
13 2009 10 250 10,83 3.186,32 13 2009 10 3000 130,00 5.883,50<br />
14 2009 11 250 10,83 3.438,46 14 2009 11 0 0,00 5.907,47<br />
15 2009 12 250 10,83 3.691,64 15 2009 12 0 0,00 5.931,54<br />
16 2010 1 250 10,83 3.945,85 16 2010 1 0 0,00 5.955,70<br />
17 2010 2 250 10,83 4.201,09 17 2010 2 0 0,00 5.979,97<br />
18 2010 3 250 10,83 4.457,37 18 2010 3 0 0,00 6.004,33<br />
19 2010 4 250 10,83 4.714,70 19 2010 4 0 0,00 6.028,79<br />
20 2010 5 250 10,83 4.973,07 20 2010 5 0 0,00 6.053,36<br />
21 2010 6 250 10,83 5.232,50 21 2010 6 0 0,00 6.078,02<br />
22 2010 7 250 10,83 5.492,99 22 2010 7 0 0,00 6.102,78<br />
23 2010 8 250 10,83 5.754,53 23 2010 8 0 0,00 6.127,64<br />
24 2010 9 250 10,83 6.017,14 24 2010 9 0 0,00 6.152,61<br />
25 2010 10 250 0,00 6.291,66 25 2010 10 500 0,00 6.677,68<br />
26 2010 11 250 0,00 6.567,29 26 2010 11 0 0,00 6.704,88<br />
<br />
Kapital
x 5 − 2x 3 − 3 = 0, cos(x) = x.
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
A B C D E F G H I<br />
CDU/CSU SPD FDP GRÜNE<br />
1998 40,5 42,5 6,4 7,5<br />
2002 38,5 38,5 7,4 8,5<br />
2005 35,5 34,5 8,4 9,5<br />
2009 33,9 23,5 14,4 12,5<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
1998<br />
2002<br />
2005<br />
2009<br />
Anteil in %<br />
45<br />
40<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
5<br />
0<br />
Wahlen 1998 bis 2009<br />
CDU/CSU<br />
SPD<br />
FDP<br />
GRÜNE<br />
1998 2002 2005 2009<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Jahr
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
A B C D E F G H I<br />
CDU/CSU SPD FDP GRÜNE<br />
1998 40,5 42,5 6,4 7,5<br />
2002 38,5 38,5 7,4 8,5<br />
2005 35,5 34,5 8,4 9,5<br />
2009 33,9 23,5 14,4 12,5<br />
50<br />
40<br />
30<br />
20<br />
10<br />
0<br />
1998<br />
2002<br />
2005<br />
2009<br />
Anteil in %<br />
45<br />
40<br />
35<br />
30<br />
25<br />
20<br />
15<br />
10<br />
5<br />
0<br />
Wahlen 1998 bis 2009<br />
CDU/CSU<br />
SPD<br />
FDP<br />
GRÜNE<br />
1998 2002 2005 2009<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Jahr
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
A B C D E F G H<br />
Anteil<br />
CDU/CSU 38,5<br />
SPD 38,5<br />
FDP 7,4<br />
GRÜNE 8,5<br />
CDU/CSU SPD FDP GRÜNE<br />
40<br />
20<br />
0<br />
38,5 38,5<br />
<br />
<br />
<br />
<br />
Anteil in %<br />
7,4<br />
8,5
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
A B C D E F G H<br />
Anteil<br />
CDU/CSU 38,5<br />
SPD 38,5<br />
FDP 7,4<br />
GRÜNE 8,5<br />
CDU/CSU SPD FDP GRÜNE<br />
40<br />
20<br />
0<br />
38,5 38,5<br />
<br />
<br />
<br />
<br />
Anteil in %<br />
7,4<br />
8,5
• <br />
<br />
<br />
<br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
•
• <br />
<br />
<br />
<br />
<br />
• <br />
<br />
<br />
<br />
<br />
<br />
•
e <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
A B C D E F G H I<br />
1999 2000 2001 2002 2003 2004 2005 2006<br />
Kapital 5.000,00 5.400,00 5.832,00 6.298,56 6.802,44 7.346,64 7.934,37 8.569,12<br />
Zinsen 0 400,00 432,00 466,56 503,88 544,20 587,73 634,75<br />
10.000<br />
8.000<br />
6.000<br />
4.000<br />
2.000<br />
0<br />
1998 1999 2000 2001 2002 2003 2004 2005 2006
e <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
A B C D E F G H I<br />
1999 2000 2001 2002 2003 2004 2005 2006<br />
Kapital 5.000,00 5.400,00 5.832,00 6.298,56 6.802,44 7.346,64 7.934,37 8.569,12<br />
Zinsen 0 400,00 432,00 466,56 503,88 544,20 587,73 634,75<br />
10.000<br />
8.000<br />
6.000<br />
4.000<br />
2.000<br />
0<br />
1998 1999 2000 2001 2002 2003 2004 2005 2006
e <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
A B C D E F G H I<br />
1999 2000 2001 2002 2003 2004 2005 2006<br />
Kapital 5.000,00 5.400,00 5.832,00 6.298,56 6.802,44 7.346,64 7.934,37 8.569,12<br />
Zinsen 0 400,00 432,00 466,56 503,88 544,20 587,73 634,75<br />
10.000<br />
8.000<br />
6.000<br />
4.000<br />
2.000<br />
0<br />
1998 1999 2000 2001 2002 2003 2004 2005 2006
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
14<br />
15<br />
16<br />
17<br />
18<br />
<br />
A B C D E F G H I J K L M N O P Q<br />
1,56 2,05 1,76 1,68 1,86 1,71 1,62 1,78 1,76 1,83<br />
1,74 1,69 1,91 1,89 1,81 1,93 1,72 1,78 1,73 1,83<br />
4,00<br />
VDF VF<br />
1,20<br />
UG OG Δ i h i f i d i F i<br />
1,50 1,65 0,15 2 0,1 0,667 0,1<br />
1,65 1,75 0,1 6 0,3 3,000 0,4<br />
1,75 1,85 0,1 7 0,35 3,500 0,75<br />
1,85 1,95 0,1 4 0,2 2,000 0,95<br />
1,95 2,10 0,15 1 0,05 0,333 1<br />
Matrixformel Spalte D:<br />
{HÄUFIGKEIT($A$1:$J$2;$B$5:$B$9)}<br />
1,30 1,50 1,65 1,75 1,85 1,95 2,10 2,25<br />
VF 0,00 0,00 0,10 0,40 0,75 0,95 1,00 1,00<br />
0,00<br />
0,00<br />
1,40 1,60 1,80 2,00 2,20<br />
1,50 1,50 1,65 1,65 1,65 1,75 1,75 1,75 1,85 1,85 1,85 1,95 1,95 1,95 2,10 2,10<br />
VDF 0,00 0,67 0,67 0,00 3,00 3,00 0,00 3,50 3,50 0,00 2,00 2,00 0,00 0,33 0,33 0,00<br />
3,00<br />
2,00<br />
1,00<br />
Größe in [m]<br />
<br />
<br />
<br />
hi <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ + ←↪<br />
<br />
n<br />
fi = hi/n <br />
Fi <br />
i <br />
F0 = f0,<br />
Fi = fi + Fi−1, i = 1 k.<br />
Fk = 1 <br />
Fi OGi F0 <br />
UG1 k + 1 (UG1, F0) (OG1, F1) <br />
(OGk, Fk) <br />
<br />
1,00<br />
0,80<br />
0,60<br />
0,40<br />
0,20
∆i <br />
fi <br />
di = fi<br />
∆i<br />
di fi <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
∆i<br />
G = − (x − 3) 2 − (y − 2) 2 + 5<br />
x + y ≥ 3<br />
x 2 + y 2 ≤ 9<br />
x, y ≥ 0
x y <br />
x, y ≥ 0 <br />
<br />
<br />
<br />
<br />
¢ ¢ <br />
<br />
<br />
<br />
¢ ¢
x = 9/ √ 13<br />
y = 6/ √ 13 <br />
<br />
3,5<br />
3<br />
2,5<br />
2<br />
1,5<br />
1<br />
0,5<br />
0<br />
0 1 2 3 4
y = sin(x) z = cos(x) [−4, 4]<br />
<br />
y = sin(πx)/(πx) [−6, 6] <br />
x = 0 1<br />
<br />
G = x + 3y x · y ≤ 4 x 2 · y ≤ 16 2x −<br />
2y ≤ 7 −2x + 2y ≤ −3 x, y ≥ 0 <br />
<br />
<br />
<br />
<br />
<br />
(x, y) <br />
x + y ≥ 250 <br />
(100, 100) <br />
<br />
1<br />
2<br />
3<br />
4<br />
5<br />
6<br />
7<br />
8<br />
9<br />
10<br />
11<br />
12<br />
13<br />
A B C D E F G H I<br />
Zahl<br />
der<br />
Flüge<br />
Flug-<br />
Flug<br />
platz x Flughäfen Kilometer<br />
A 40 200 40 4019,9502<br />
B 160 210 10 1702,9386<br />
C 250 160 20 4560,7017<br />
D 220 80 30 5731,492<br />
E 100 40 20 1843,9089<br />
F 50 120 10 282,84271<br />
Optimum 30 100<br />
Min z =<br />
u. d. Nebenbedingungen<br />
18141,834<br />
x + y ≤ 250 130<br />
(x - 100)^2 + (y - 100)^2 ≥ 400 4900<br />
250<br />
200<br />
150<br />
100<br />
50<br />
0<br />
Y<br />
Standorte der Flughäfen<br />
0 50 100 150 200<br />
X<br />
250<br />
Flughäfen Optimum
X µ =<br />
1, 80 σ = 0, 07 <br />
<br />
<br />
<br />
x ↦→ f(x) =<br />
0, 5x 4 − 2x − 3 xp xn <br />
<br />
x0 > xp <br />
x0 = 3<br />
<br />
[−2, 3]<br />
xn<br />
<br />
<br />
x ↦→ f(x) = x 4 /4 − 5/4x 2 + 1 [−3, 3]
X µ =<br />
1, 80 σ = 0, 07 <br />
<br />
<br />
<br />
x ↦→ f(x) =<br />
0, 5x 4 − 2x − 3 xp xn <br />
<br />
x0 > xp <br />
x0 = 3<br />
<br />
[−2, 3]<br />
xn<br />
<br />
<br />
x ↦→ f(x) = x 4 /4 − 5/4x 2 + 1 [−3, 3]
X µ =<br />
1, 80 σ = 0, 07 <br />
<br />
<br />
<br />
x ↦→ f(x) =<br />
0, 5x 4 − 2x − 3 xp xn <br />
<br />
x0 > xp <br />
x0 = 3<br />
<br />
[−2, 3]<br />
xn<br />
<br />
<br />
x ↦→ f(x) = x 4 /4 − 5/4x 2 + 1 [−3, 3]
• <br />
<br />
•
\
+ <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
+ <br />
<br />
<br />
<br />
+
⇑ + <br />
<br />
<br />
⇑ +
Sub <br />
End Sub
Sub IrgendeinName() <br />
End Sub <br />
<br />
<br />
<br />
Sub NeuesBlatt() Sub NeuesBlatt<br />
<br />
<br />
<br />
’ Löschen der dritten Tabelle<br />
Sub Tabelle3Weg()<br />
Sheets(3).Select<br />
ActiveSheet.Delete<br />
End Sub<br />
’ Neuerstellung der dritten Tabelle<br />
Sub Tabelle3Her()<br />
Sheets.Add<br />
ActiveSheet.Name = "Tabelle3"<br />
Sheets("Tabelle3").Move After:=Sheets(Sheets.Count)<br />
End Sub<br />
Tabelle3Weg() <br />
<br />
Tabelle3Her() <br />
Add Sheets <br />
<br />
ActiveSheet <br />
<br />
<br />
<br />
<br />
<br />
Sheets("Tabelle3").Select<br />
<br />
<br />
<br />
<br />
HalloA1() <br />
<br />
Save_As()
+ <br />
<br />
<br />
<br />
Tabelle3Weg() Tabelle3Her() <br />
<br />
<br />
Tabelle3Her()
Sub ZellenKopie()<br />
Sheets(1).Range("A1").Value = Sheets(3).Range("C1").Value<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
Function Addi(ByVal a As Double, ByVal b As Double) As Double<br />
Addi = a + b<br />
End Function
Sub Function <br />
a b
Sub AddierenUndKopieren()<br />
Sheets(3).Range("C1").Value = _<br />
Addi(Sheets(3).Range("A1").Value, _<br />
Sheets(3).Range("B1").Value)<br />
ZellenKopie<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Sub Gustav()
Dim Wert As Integer<br />
Wert = MsgBox("Das aktive Arbeitsblatt Gustav nennen?", _<br />
vbYesNo + vbQuestion, "Entscheidung!")<br />
If (Wert = vbNo) Then Exit Sub<br />
ActiveSheet.Name = "Gustav"<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Wert <br />
Wert vbNo <br />
<br />
<br />
Rueck = MsgBox( Meldung, Btns, Titel)
Sub MeldungsTest()<br />
Sheets(1).Range("A1").Value = _<br />
MsgBox("Mein Häuslein brennt!", _<br />
VbOKCancel + VbExclamation, "Hilfe")<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Sub EiGudeWie()<br />
MsgBox "Wir wünschen Ihnen einen guten Tag!"<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
String <br />
<br />
<br />
<br />
<br />
<br />
Sub FaerbeA1()<br />
Dim Farbe As String<br />
Farbe = InputBox("Wählen Sie rot oder gelb:",_<br />
"Farbe eingeben", "rot)<br />
Sheets(1).Select<br />
Range("A1").Select<br />
If (UCase(Farbe) = "ROT") Then _<br />
Selection.Interior.ColorIndex = 3<br />
If (UCase("Farbe") = "GELB") Then _<br />
Selection.Interior.ColorIndex = 36<br />
End Function
UCase() <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
DisplayAlerts() <br />
<br />
<br />
<br />
1<br />
2<br />
A B C D E<br />
Schaltflächen Symbol Meldung<br />
Lieben Sie große Hunde<br />
Titel Rückgabe<br />
OK und Abbrechen Fragezeichen und kleine Kinder? Neugierig<br />
<br />
<br />
<br />
<br />
Meldung()
Hans hans <br />
Hans
Public Private Dim <br />
Long Double <br />
Dim alt As Long<br />
Dim alpha As Double<br />
<br />
alt Long <br />
alpha Double <br />
Dim <br />
<br />
alt <br />
alpha String <br />
"" <br />
<br />
<br />
Variant <br />
Dim Private Public <br />
<br />
<br />
<br />
Dim alt As Long, neu As Long ’So ist es richtig!<br />
Dim alpha, beta As Double ’So ist es falsch<br />
Long <br />
Double <br />
beta alpha alpha Variant <br />
<br />
<br />
<br />
Option Explicit<br />
Dim<br />
Private Public ReDim Static <br />
<br />
<br />
<br />
<br />
Option Explicit
Dim alt As Long : alt = 30<br />
<br />
<br />
Dim alt As Long<br />
alt = 30<br />
<br />
_ <br />
<br />
<br />
<br />
Sub Function If <br />
<br />
<br />
Function End Function If End If <br />
<br />
<br />
<br />
<br />
+ − ∗ <br />
<br />
<br />
If <br />
Sub
Xxx12<br />
xXX12 Xxx12 <br />
_xyz<br />
92X -X ?XY _ <br />
X_08_15 <br />
<br />
Dim x As Long<br />
Function Summe() <br />
<br />
If <br />
<br />
Hans hans <br />
Hans <br />
<br />
’
2500 = 1000 + 30 · 50 <br />
<br />
<br />
<br />
<br />
<br />
Option Explicit<br />
Muss am Anfang stehen!<br />
Public Grundgehalt As Double<br />
Private Zuwachs As Double<br />
Public Const Zulage = 50<br />
Function Lohn(ByVal Alter As Long) As Double<br />
Lohn = (Grundgehalt + Zulage * Alter) * (1 + Zuwachs)<br />
End Function<br />
Sub InitDaten()<br />
Grundgehalt = 1000 ’Darf jeder wissen!<br />
Zuwachs = 0,1 ’Chefsache!<br />
End Sub<br />
Private Sub LohnTest()<br />
’ Zwei Anweisungen in einer Zeile! Brrrr!<br />
Dim alt As Long : alt = 30<br />
MsgBox "Lohn(30): " & Lohn(30)<br />
InitDaten<br />
alt = InputBox("Wie alt sind Sie?", "Alter eingeben", alt)<br />
MsgBox "Sie sind " & alt & " Jahre alt und verdienen " _<br />
& Lohn(alt) & " Euros!"<br />
End Sub<br />
<br />
<br />
LohnTest
Option Explicit <br />
<br />
<br />
<br />
InitDaten MsgBox <br />
Lohn InputBox<br />
<br />
<br />
InitDaten() <br />
LohnTest() <br />
<br />
<br />
<br />
Option Explicit <br />
<br />
<br />
<br />
Dim alt As Long: alt = 30<br />
<br />
<br />
<br />
<br />
<br />
Lohn() <br />
ByVal <br />
<br />
<br />
<br />
<br />
<br />
Lohn()
Public <br />
Private <br />
[Public][Private] Variablenname [As Typ]<br />
<br />
Public <br />
<br />
<br />
<br />
<br />
Option Private Module<br />
<br />
Private <br />
Private Dim <br />
Private <br />
<br />
<br />
<br />
<br />
<br />
Dim <br />
Private Public <br />
<br />
<br />
Grundgehalt Zuwachs <br />
<br />
Grundgehalt <br />
alt LohnTest()
Option Explicit<br />
Sub Sub1()<br />
Dim lok As Long<br />
lok = 2<br />
MsgBox "Hier Sub1! lok = " & lok<br />
End Sub<br />
Sub Sub2()<br />
Dim lok As Long<br />
lok = 3<br />
Sub1<br />
MsgBox "Hier Sub2! lok = " & lok<br />
End Sub<br />
<br />
Sub1 <br />
Sub2 Sub1 <br />
Sub1 <br />
lok <br />
lok Sub2 <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Option Explicit<br />
Public pub As Long<br />
Sub InitPub()<br />
pub = 1<br />
End Sub
Sub Pub1()<br />
InitPub<br />
MsgBox "Hier Pub1! pub = " & pub<br />
End Sub<br />
<br />
Sub Pub2()<br />
Dim pub As Long<br />
pub = 3<br />
InitPub<br />
MsgBox "Hier Pub2! pub = " & pub<br />
MsgBox "Hier Pub2! GlobLoc.pub = " & GlobLoc.pub<br />
End Sub<br />
InitPub pub<br />
<br />
pub pub <br />
<br />
<br />
<br />
GlobLoc GlobLoc.pub <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Const <br />
Public Private <br />
Public <br />
[Public][Private] Const Bezeichner [As Typ] = Ausdruck<br />
<br />
<br />
Private Const KurzPi = 3.14<br />
Public Const LangPi As Double = KurzPi + 0.00159<br />
Public Const GebDatum = "19.1.1971"
LangPi <br />
<br />
GebDatum LangPi KurzPi <br />
<br />
Zulage <br />
Public <br />
<br />
<br />
<br />
<br />
Public <br />
Sub Function <br />
Private <br />
LohnTest() <br />
<br />
<br />
Option Explicit<br />
Sub Ausgabe()<br />
InitDaten<br />
MsgBox "Grundgehalt: " & Grundgehalt _<br />
& vbNewLine & "Lohn im Alter 30: " & Lohn(30)<br />
’Nicht erlaubt in einem anderen Modul<br />
’MsgBox "Zuwachs = " & Zuwachs<br />
’LohnTest<br />
End Sub<br />
InitDaten() Grundgehalt <br />
<br />
Zuwachs <br />
LohnTest() <br />
Zuwachs Public <br />
LohnTest() Private Public <br />
<br />
<br />
<br />
<br />
<br />
Double
Byte <br />
<br />
<br />
Integer <br />
<br />
<br />
Long <br />
<br />
Single <br />
<br />
<br />
<br />
Double <br />
<br />
<br />
<br />
Currency <br />
<br />
<br />
<br />
<br />
Decimal ±79.228.162.514.264.337.593.543.950.335
±10 <br />
<br />
±0, 0000000000000000000000000001 <br />
Long Double <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Sub UeberlaufTest()<br />
Dim a As Integer, b As Integer<br />
a = 16000<br />
b = 17000<br />
MsgBox "a + b = " & a + b<br />
End Sub<br />
<br />
Long Integer <br />
<br />
<br />
<br />
Boolean <br />
True False<br />
<br />
Dim b As Boolean<br />
b = i > 2<br />
b True i <br />
False<br />
<br />
True False <br />
True False <br />
Dim i as Long<br />
Dim b as Boolean<br />
i = (i < 2) + 2*b
i b False <br />
(i < 2) True 2*b <br />
b False <br />
True i <br />
<br />
<br />
<br />
<br />
True False <br />
<br />
If (Bedingung) Then Anweisung<br />
<br />
<br />
<br />
<br />
If (Monat >= 11) Then MsgBox("Bald kommt der Nikolaus!")<br />
If (Nachname = "Kohl") Then Vorname = "Helmut"<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
d = c*(a + b) <br />
c d = (a + b)
+ − ∗ / ^<br />
\ Mod <br />
<br />
\ Mod <br />
<br />
x*5^4, (y/x)^(-0.5), (x+y)/(x^2-z)<br />
<br />
5x^4, (y/x)^-0.5, (xy)/(x^2-z) -2,3<br />
<br />
<br />
<br />
<br />
<br />
<br />
\ <br />
<br />
<br />
Mod 17 Mod 4 16 Mod 4 22 Mod 4 <br />
17 \ 4 25 \ 5 <br />
<br />
x < y <br />
x y <br />
3 < 4 <br />
"drei"< "vier" True <br />
False <br />
<br />
<br />
<br />
<br />
x > y x < y <br />
x >= y x
And <br />
<br />
<br />
<br />
Or <br />
X Y <br />
True <br />
True Xor <br />
X Y Eqv <br />
True <br />
Imp X Imp Y True<br />
X True Y = False <br />
Not <br />
<br />
<br />
<br />
If(a = 3 And c 5) Then Anweisung<br />
If(a < 6 Or x > 4) Then Anweisung<br />
If(Not(a < 6 Or x > 4)) Then Anweisung<br />
x <br />
a b <br />
If(x > a And x < b) Then Anweisung<br />
<br />
If(b > x > a) Then Anweisung<br />
<br />
X Y
∗ / <br />
+ − <br />
< >= <br />
= <br />
<br />
<br />
= <br />
<br />
<br />
<br />
2*3 + 4*5
a + b < c*d<br />
<br />
(a + b) < (c*d)<br />
<br />
<br />
<br />
Variable = Arithmetischer Ausdruck<br />
<br />
gamma = 2*beta + alpha+5.004<br />
a = 3*a + 2<br />
<br />
<br />
<br />
gamma gamma<br />
<br />
a a =<br />
−1 <br />
a a <br />
a a <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
a = b = 3*d + 1<br />
a b 3*d + 1 <br />
<br />
a = (b = 3*d + 1)<br />
b <br />
3*d + 1 b a
Option Explicit<br />
Public a As Double<br />
Private Sub Set_a()<br />
a = 1<br />
End Sub<br />
Sub Arith()<br />
Dim i As Long<br />
Dim a As Double<br />
a = 2.1<br />
Set_a<br />
i = (a * a) ^ 2<br />
a = a * a ^ 2<br />
MsgBox "i = " & i & ", a = " & a & ", a = " & Abschluss.a<br />
i = (i \ 4) * 4<br />
MsgBox "i = " & i & ", i Mod 4 = " & i Mod 4<br />
End Sub<br />
<br />
<br />
<br />
1 − x 2 /2! + x 4 /4! x y−z<br />
a n−1/2 /b 2n<br />
<br />
-a = 4<br />
4 = Hans<br />
a - 2 = b + 4<br />
"Hugo" = "Emma"<br />
Test <br />
Option Explicit<br />
Public pub As Long<br />
Sub Init(ByVal ww As Long)<br />
pub = ww<br />
End Sub<br />
Function AddPub(ByVal d As Long)
AddPub = d + pub<br />
End Function<br />
Function NewAddPub(ByVal d As Long)<br />
Dim pub As Long<br />
NewAddPub = d + pub<br />
Init 3<br />
End Function<br />
Sub Test()<br />
Dim a As Long, b As Long<br />
Dim c As Long, d As Long<br />
a = 3<br />
Init 1<br />
b = AddPub(a)<br />
c = NewAddPub(a)<br />
d = AddPub(a)<br />
MsgBox "b = " & b & ", c = " & c & ", d = " & d<br />
End Sub<br />
<br />
Sub BoolTest1()<br />
Dim a As Long, b As Long, c As Long<br />
c = a = b<br />
MsgBox "c = " & c<br />
c = Not c<br />
MsgBox "c = " & c<br />
End Sub<br />
<br />
Sub BoolTest2()<br />
Dim i As Long<br />
Dim b As Boolean<br />
i = (i = b) + 2 * True<br />
MsgBox "i = " & i<br />
End Sub
\ Mod<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
a a i <br />
Long (a * a)^2 <br />
<br />
a = a * a^2 a = a * (a ^ 2) <br />
(i \ 4) <br />
i <br />
i Mod 4
sin(3.14) <br />
<br />
sin(2.1) <br />
<br />
x <br />
<br />
<br />
<br />
sin(x) tan(x) <br />
<br />
WorksheetFunction <br />
WorksheetFunction.Max(1,3,4) <br />
WorksheetFunction.
Gehalt()<br />
<br />
Option Explicit<br />
Function Gehalt(ByVal al As Long, ByVal k As Long) As Long<br />
Dim Grundgehalt As Long<br />
Grundgehalt = 500<br />
If (al > 30 And al < 46) Then Grundgehalt = 1000<br />
If (al >= 46) Then Grundgehalt = 1500<br />
Gehalt = Grundgehalt + k * 300<br />
End Function<br />
<br />
<br />
<br />
<br />
<br />
al k <br />
<br />
<br />
500 + 300 = 800<br />
1000 + 900 = 1900<br />
1500 + 1200 = 2700<br />
<br />
Function Name_der_Funktion(Parameterliste) As Typ_der_Funktion<br />
Anweisungen<br />
End Function<br />
Function
ByVal<br />
As <br />
<br />
<br />
<br />
Gehalt <br />
Gehalt <br />
Long<br />
<br />
<br />
Gehalt() <br />
Gehalt = Grundgehalt + k*300<br />
Gehalt <br />
<br />
<br />
<br />
<br />
<br />
Gehalt <br />
Gehalt(30,2) <br />
<br />
<br />
<br />
<br />
Gehalt()<br />
<br />
Dim s As Long<br />
s = Gehal(20, 3) ’falscher Namen, Gehal statt Gehalt<br />
s = Gehalt("Pi", 3.14) ’unsinnige Parametertypen<br />
s = Gehalt(20, 3, 12) ’zu viele Parameter<br />
<br />
Gehalt() <br />
<br />
<br />
Sub GehaltTest()<br />
Dim a As Long, k As Long<br />
a = 48: k = 3<br />
MsgBox "Alter: " & a & ", Kinder: " & k & _
", Gehalt: " & Gehalt(a, k)<br />
MsgBox "Alter: 35" & ", Kinder: 2" & _<br />
", Gehalt: " & Gehalt(35, 2)<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
s = Gehalt(20, 3)<br />
Gehalt(al, k) al k <br />
<br />
<br />
<br />
<br />
Gehalt(20, 3) <br />
al k <br />
<br />
<br />
al k alter kinder <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Byval
ByRef <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Sub Tausch(ByRef i As Long, ByRef j As Long)<br />
Dim h As Long<br />
h = j : j = i : i = h<br />
End Sub<br />
Tausch() <br />
<br />
TauschtNicht()<br />
Sub TauschtNicht(ByVal i As Long, ByVal j As Long)<br />
Dim h As Long<br />
h = j : j = i : i = h<br />
End Sub<br />
a b <br />
c d<br />
Sub TauschTest()<br />
Dim a As Long, b As Long, c As Long, d As Long<br />
a = 1: b = 2: c = 3: d = 4
Tausch a, b<br />
TauschtNicht c, d<br />
MsgBox "a = " & a & ", b = " & b & _<br />
", c = " & c & ", d = " & d<br />
End Sub<br />
<br />
a = 2, b = 1, c = 3, d = 4<br />
<br />
<br />
Tausch 10, 20<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Exit Sub Exit Function <br />
<br />
<br />
<br />
<br />
<br />
<br />
K0 p n Kn =<br />
K0(1 + p/100) n <br />
<br />
<br />
Function EndKapital(ByVal K_0 As Double, _<br />
ByVal p As Double, ByVal n As Long) As Double<br />
If (p < 0) Or (n < 0) Then Exit Function<br />
EndKapital = WorksheetFunction.Round(K_0 * (1 + p/100) ^ n,2)<br />
End Function<br />
<br />
<br />
WorksheetFunction.Round
x 2 + px + q = 0.<br />
<br />
D = p 2 − 4q<br />
<br />
x1 = 0, 5(−p + D 0,5 ), x2 = 0, 5(−p − D 0,5 )<br />
<br />
p q <br />
D x1 x2 <br />
Sub PQFormel(ByVal p As Double, q As Double, _<br />
ByRef D As Double, ByRef x1 As Double, ByRef x2 As Double)<br />
D = p ^ 2 - 4 * q<br />
If (D < 0) Then Exit Sub<br />
x1 = 0.5 * (-p + D ^ (0.5))<br />
x2 = 0.5 * (-p - D ^ (0.5))<br />
End Sub<br />
Sub TestPQ()<br />
Dim p As Double, q As Double<br />
Dim D As Double, x As Double, y As Double<br />
p = -9: q = 20<br />
PQFormel -9, 20, D, x, y<br />
MsgBox "D = " & D & ", x = " & x & ", y = " & y<br />
End Sub<br />
TestPQ <br />
p = -9 q = 20 <br />
PQFormel<br />
p q <br />
p q <br />
<br />
<br />
p PQFormel <br />
p TestPQ<br />
<br />
PQFormel <br />
D D TestPQ <br />
x y x1 x2 D<br />
x y TestPQ PQFormel <br />
p q TestPQ
n<br />
n
ByRef <br />
<br />
<br />
<br />
<br />
<br />
ByRef PQFormel <br />
<br />
<br />
<br />
Zinssatz1 <br />
<br />
Exit Function <br />
<br />
<br />
<br />
ax + by = e<br />
cx + dy = f.
Det2 = ad − bc <br />
x = (de − bf)/Det2 y = (af − ce)/Det2 <br />
Det2 <br />
<br />
Log(x) <br />
<br />
<br />
Log10(x) x <br />
<br />
<br />
ISTSCHALTJAHR <br />
True <br />
False
"Hallo" <br />
<br />
2 31 <br />
<br />
2 16 <br />
String String*k
Sub StringTest()<br />
Dim SVar As String<br />
Dim SFest As String * 5<br />
SVar = "Angela"<br />
SFest = "Angela"<br />
MsgBox "SVar = " & vbTab & SVar & vbNewLine & _<br />
"SFest = " & vbTab & SFest<br />
End Sub<br />
SVar SFest <br />
<br />
<br />
<br />
<br />
SVar = Angela<br />
SFest = Angel<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
&
Sub TestEt()<br />
Dim s As String, t As String, j As Long<br />
s = "Hallo"<br />
t = " Welt im Jahr " ’Leerzeichen beachten!<br />
j = 2009<br />
t = s & t & j & "!"<br />
MsgBox t<br />
End Sub<br />
<br />
t "Hallo Welt im Jahr 2009!" <br />
& <br />
<br />
s = "Blah, blah, blah, blah, blah, blah, blah, blah, blah,"<br />
s = s & " Dacapo: blah"<br />
<br />
<br />
s = "Pi ist ungefähr " & 3.14<br />
s "Pi ist ungefähr 3.14"<br />
<br />
<br />
Len(s) s <br />
LCase(s) <br />
s <br />
UCase(s) <br />
s <br />
<br />
Left(s, k) s k <br />
s k <br />
<br />
Right(s, k) s k <br />
s k <br />
<br />
Mid(s, i, k) s i k <br />
s i <br />
(i + k - 1) i k
InStr(pos, s, teilstr) <br />
s teilstr pos <br />
<br />
teilstr s <br />
<br />
<br />
LTrim(s) RTrim(s) Trim(s) <br />
<br />
<br />
<br />
Replace(s, findme, rplc) <br />
s findme rplc <br />
<br />
Mid(s, i, 1) <br />
i String <br />
<br />
String<br />
Variant String <br />
Left$(s, k) <br />
Left(s, k) <br />
<br />
<br />
Sub StringFunctionTest()<br />
Dim s As String, anf As String, ende As String<br />
Dim <strong>mit</strong>te As String, Us As String<br />
Dim Ls As String, pi As String<br />
Dim lng As Long<br />
Dim i As Long, j As Long, r As Long<br />
<br />
s = "Hallo Welt"<br />
Ls = LCase(s)<br />
Us = UCase(s)<br />
lng = Len(s)<br />
MsgBox "s = " & s & ", Us = " & Us & ", _<br />
Ls = " & Ls & ", lng = " & lng<br />
anf = Left(s, 3)<br />
ende = Right(s, 2)<br />
<strong>mit</strong>te = Mid(s, 7, 2)<br />
MsgBox "anf = " & anf & ", ende = " & ende _<br />
& ", <strong>mit</strong>te = " & <strong>mit</strong>te
i = InStr(s, "Welt")<br />
j = InStr(3, s, "Welt")<br />
r = InStr(3, s, "Hallo")<br />
MsgBox "i = " & i & ", j = " & j & ", r = " & r<br />
End Sub<br />
<br />
<br />
<br />
Trim Replace <br />
Sub Trimtest()<br />
Dim s As String<br />
s = " Blah "<br />
Dim skurz As String<br />
skurz = Trim(s)<br />
MsgBox s & "ende" & ", " & skurz & "ende"<br />
End Sub<br />
Sub Replacetest()<br />
Dim s As String, srplc As String, rplc As String<br />
s = "Blah, Sonst , Blah"<br />
rplc = "XXX"<br />
srplc = Replace(s, "Blah", rplc)<br />
MsgBox s & ", " & srplc<br />
End Sub<br />
Trimtest <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
"21"<br />
<br />
<br />
CInt(Ausdruck)<br />
CLng(Ausdruck)<br />
CSng(Ausdruck)
CDbl(Ausdruck)<br />
CDec(Ausdruck)<br />
CCur(Ausdruck)<br />
CDate(Ausdruck)<br />
<br />
CInt() CDbl() <br />
<br />
<br />
<br />
<br />
<br />
IsNumeric() True <br />
<br />
<br />
IsNumeric() <br />
<br />
Long <br />
Dim i As Long, istr As String<br />
istr = InputBox("Alter", "Alter eingeben", 20)<br />
If (IsNumeric(istr)) Then i = CLng(istr);<br />
<br />
IsNumeric() <br />
<br />
<br />
<br />
Double <br />
Sub CDblTest()<br />
Dim piKomma As String, piPunkt As String<br />
Dim piRichtig As Double, piFalsch As Double<br />
piKomma = "3,14"<br />
If (IsNumeric(piKomma)) Then piRichtig = CDbl(piKomma)<br />
MsgBox "Korrekte Umwandlung: " & piRichtig<br />
piPunkt = "3.14"<br />
If (IsNumeric(piPunkt)) Then piFalsch = CDbl(piPunkt)<br />
MsgBox "Falsche Umwandlung: " & piFalsch<br />
End Sub
Function KommaWeg(ByRef z As String) As String<br />
Dim i As Long<br />
i = InStr(z, ",")<br />
If (i > 0) Then KommaWeg = Left(z, i - 1) & _<br />
"." & Right(z, Len(z) - i)<br />
End Function<br />
Sub KommaWegSub(ByRef z As String)<br />
z = KommaWeg(z)<br />
End Sub<br />
Sub KommaTest()<br />
Dim pi As String, pipunkt As String<br />
pi = "3,14"<br />
pipunkt = KommaWeg("3,14")<br />
KommaWegSub pi<br />
’Aber nicht KommaWegSub(pi)<br />
MsgBox "pi = " & pi & ", " & "pipunkt = " & pipunkt<br />
End Sub<br />
z String KommaWeg <br />
<br />
<br />
KommaWegSub <br />
<br />
KommaTest pi pipunkt
Date <br />
<br />
<br />
<br />
Date # <br />
#January 1, 1993# #1 Jan 93# <br />
#mm/tt/yy# <br />
#11/13/2009# <br />
<br />
Date <br />
<br />
<br />
Date <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Date <br />
<br />
<br />
<br />
Now Date <br />
<br />
<br />
<br />
<br />
<br />
Variant <br />
IsDate(d) Boolean <br />
d <br />
True <br />
Date
True <br />
#12/30/1899 12:00 am#<br />
Day(d) <br />
<br />
Month(d) <br />
<br />
Year(d) <br />
<br />
Hour(d) <br />
<br />
Minute(d) <br />
<br />
Second(d) <br />
<br />
Weekday(datum, [firstdayofweek])) <br />
<br />
<br />
vbMonday <br />
<br />
DateSerial(jahr,monat,tag) <br />
Date <br />
<br />
DateSerial(2008,12,24) <br />
<br />
TimeSerial(stu,m,sek) Date<br />
<br />
<br />
DateAdd(interval,wieviel,datum) <br />
Date <br />
datum <br />
interval <br />
<br />
<br />
DateAdd("d",7,DateSerial(2008,12,24) <br />
DateAdd("yyyy",7,DateSerial(2008,12,24)
Sub DateTest()<br />
Dim Weihnacht As Date, Sylvester As Date, diff As Long<br />
Dim aus As String, J As Long<br />
J = Year(Now)<br />
diff = DateSerial(J, 12, 24) - Now + Time<br />
aus = "Now: " & Now & ", Time: " & Time<br />
aus = aus & "." & vbNewLine & diff & "-mal werden wir noch"<br />
aus = aus & " wach, heißa dann ist Weihnachtstach!"<br />
MsgBox (aus)<br />
End Sub<br />
DateAdd <br />
Sub DateAddTest()<br />
Dim dt As Date<br />
dt = DateSerial(2008, 12, 24)<br />
MsgBox DateAdd("d", 7, dt) & ", " & DateAdd("yyyy", 7, dt) _<br />
& ", " & DateAdd("m", -7, dt) & ", " & DateAdd("y", -7, dt)<br />
End Sub<br />
<br />
<br />
<br />
Public Function Muttertag(ByVal Jahr As Long) As Date<br />
Muttertag = DateSerial(Jahr, 5, _<br />
15 - Weekday(DateSerial(Jahr, 5, 1), vbMonday))<br />
End Function<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Public Function Ostersonntag(ByVal Jahr As Long) As Date<br />
Dim a As Long, b As Long, C As Long<br />
Dim D As Long, e As Long, f As Long
’ Die "magische" Gauss-Formel anwenden:<br />
a = Jahr Mod 19<br />
b = Jahr \ 100<br />
C = (8 * b + 13) \ 25 - 2<br />
D = b - (Jahr \ 400) - 2<br />
e = (19 * (Jahr Mod 19) + ((15 - C + D) Mod 30)) Mod 30<br />
If e = 28 And a > 10 Then e = 27<br />
If e = 29 Then e = 28<br />
f = (D + 6 * e + 2 * (Jahr Mod 4) _<br />
+ 4 * (Jahr Mod 7) + 6) Mod 7<br />
Ostersonntag = DateSerial(Jahr, 3, e + f + 22)<br />
End Function<br />
<br />
<br />
<br />
Function Pfingstsonntag(ByVal Jahr As Long)<br />
Pfingstsonntag = DateAdd("d", 49, Ostersonntag(Jahr))<br />
End Function<br />
<br />
<br />
Function Fastnacht(ByVal Jahr As Long)<br />
Fastnacht = DateAdd("d", -47, Ostersonntag(Jahr))<br />
End Function<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Person <br />
<br />
<br />
<br />
Person <br />
Nachname Vorname Geschlecht GebDat
NewPersW <br />
<br />
<br />
Pers=NewPersW("Müller", "Lieschen") Pers.Nachname <br />
<br />
Kopie = Pers <br />
Kopie Pers <br />
Vorname Kopie <br />
Vorname Pers<br />
ToString <br />
<br />
<br />
Option Explicit<br />
Public Type Person<br />
Nachname As String<br />
Vorname As String<br />
Geschlecht As String * 1<br />
GebDat As Date<br />
End Type<br />
Function NewPersW(ByRef n As String, ByRef vn As String) _<br />
As Person<br />
NewPersW.Nachname = n<br />
NewPersW.Vorname = vn<br />
NewPersW.Geschlecht = "W"<br />
NewPersW.GebDat = Now() - Time()<br />
End Function<br />
Function PersonToString(ByRef p As Person) As String<br />
PersonToString = p.Vorname & " " & p.Nachname & ", geb. " _<br />
& p.GebDat<br />
End Function<br />
Sub TestPerson()<br />
Dim Pers As Person, Kopie As Person<br />
Pers = NewPersW("Müller", "Lieschen")<br />
Kopie = Pers<br />
Kopie.Vorname = "Helena"<br />
MsgBox PersonToString(Pers) & ", " & PersonToString(Kopie)<br />
End Sub<br />
<br />
<br />
ToString
ToString <br />
<br />
<br />
<br />
Variant <br />
<br />
Dim IchBinVariant As Variant ’Explizit als Variant deklariert<br />
Dim IchAuch ’Variablen ohne Typangabe sind Variant<br />
Variant <br />
<br />
Variant <br />
Variant Long <br />
Variant Long <br />
Variant Byte Integer Long Single <br />
<br />
Variant <br />
Byte Integer Integer Long<br />
Long Single Double <br />
Currency Decimal Double <br />
Variant <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Long Double <br />
Date <br />
Double <br />
<br />
<br />
String
a b <br />
Long a = b <br />
a <br />
b a b<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Long Double <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
MitHallo <br />
<br />
MitHalloSub <br />
<br />
HideLeftXX <br />
<br />
<br />
HideLeftXXSub <br />
<br />
<br />
<br />
SwitchIJ <br />
i j
SwitchIJSub <br />
<br />
Alter <br />
<br />
Frist <br />
n <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
KMult <br />
Invers(z) 1/z <br />
InversSub(z) z 1/z <br />
KomplexToString(z)
SwitchIJSub <br />
<br />
Alter <br />
<br />
Frist <br />
n <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
KMult <br />
Invers(z) 1/z <br />
InversSub(z) z 1/z <br />
KomplexToString(z)
Sub IfTest()<br />
Dim x As Double<br />
x = InputBox("Bitte positive Zahl eingeben: ", "Los", "0")<br />
If (x
If (x
’Hier geht’s weiter!<br />
Gehalt = Grundgehalt - Alter*Krankenkasse<br />
End Function<br />
<br />
Alter <br />
Else <br />
End If <br />
2000 − 30 · 15 = 1550 <br />
3000 − 60 · 20 = 1800 <br />
<br />
Else <br />
<br />
End If <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Function Brutto1(ByVal al As Long, ByVal k As Long) As Long<br />
<br />
Dim Kindergeld As Long, Grundgehalt As Long<br />
If (al < 15) Then<br />
Brutto1 = -1<br />
Exit Function<br />
End If<br />
If (al < 31) Then<br />
Grundgehalt = 500<br />
Kindergeld = 300<br />
Else<br />
If (al > 30 And al < 46) Then
Grundgehalt = 1000<br />
Kindergeld = 250<br />
Else<br />
Grundgehalt = 1500<br />
Kindergeld = 200<br />
End If<br />
End If<br />
Brutto1 = Grundgehalt + k*Kindergeld<br />
End Function<br />
<br />
<br />
<br />
Exit Function <br />
End If <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
If(Bedingung_1) Then<br />
Anweisung(en)<br />
ElseIf(Bedingung_2) Then<br />
Anweisung(en)<br />
’usw.<br />
Else<br />
Anweisung(en)<br />
End If<br />
If Else
End If <br />
<br />
Brutto2() <br />
Function Brutto2(ByVal al As Long, ByVal k As Long) As Long<br />
Dim Kindergeld As Long, Grundgehalt As Long<br />
If (al < 15) Then<br />
Brutto2 = -1<br />
Exit Function<br />
ElseIf (al < 31) Then<br />
Grundgehalt = 500<br />
Kindergeld = 300<br />
ElseIf (al > 30 And al < 46) Then<br />
Grundgehalt = 1000<br />
Kindergeld = 250<br />
Else<br />
Grundgehalt = 1500<br />
Kindergeld = 200<br />
End If<br />
Brutto2 = Grundgehalt + k*kindergeld<br />
End Function<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Case Select Case <br />
Select Case(Ausdruck)<br />
Case Auswahlliste1<br />
Anweisung(en)<br />
Case Auswahlliste2<br />
Anweisung(en)<br />
’usw.<br />
Case Else<br />
Anweisung(en)
End Select<br />
<br />
<br />
Case Else <br />
<br />
<br />
<br />
<br />
Function Brutto3(ByVal al As Long, ByVal k As Long) As Long<br />
Dim Kindergeld As Long, Grundgehalt As Long<br />
Select Case al<br />
Case Is < 15<br />
Brutto3 = -1<br />
Exit Function<br />
Case 15 To 30<br />
Grundgehalt = 500<br />
Kindergeld = 300<br />
Case 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, _<br />
42, 43, 44, 45<br />
Grundgehalt = 1000<br />
Kindergeld = 250<br />
Case Else<br />
Grundgehalt = 1500<br />
Kindergeld = 200<br />
End Select<br />
Brutto3 = Grundgehalt + k * Kindergeld<br />
End Function<br />
<br />
<br />
<br />
<br />
<br />
<br />
Function Jahreszeit(ByVal tag As Long, _<br />
ByVal mon As Long) As String<br />
If (mon = 1 Or mon = 2 Or (mon = 3 And tag < 21) _<br />
Or (mon = 12 And tag > 20)) Then<br />
Jahreszeit = "Winter"
ElseIf (mon = 4 Or mon = 5 Or (mon = 3 And tag > 20) _<br />
Or (mon = 6 And tag < 21)) Then<br />
Jahreszeit = "Lenz"<br />
ElseIf (mon = 7 Or mon = 8 Or (mon = 9 And tag < 21) _<br />
Or (mon = 6 And tag > 20)) Then<br />
Jahreszeit = "Sommer"<br />
Else<br />
End If<br />
End Function<br />
Jahreszeit = "Herbst"<br />
<br />
<br />
<br />
<br />
<br />
Season()<br />
Function Season(ByVal tag As Long, _<br />
ByVal mon As Long) As String<br />
<br />
Select Case mon<br />
Case 1, 2, 3<br />
Season = "Winter"<br />
If (mon = 3 And tag > 20) Then Season = "Frühling"<br />
Case 4 To 6<br />
Season = "Frühling"<br />
If (mon = 6 And tag > 20) Then Season = "Sommer"<br />
Case Is 20) Then Season = "Herbst"<br />
Case Else<br />
Season = "Herbst"<br />
If (mon = 12 And tag > 20) Then Season = "Winter"<br />
End Select
End Function<br />
<br />
<br />
<br />
Gehalt Bruttoi <br />
<br />
<br />
Sub AuswahlTest()<br />
Dim alt As Long, ki As Long<br />
Dim t As Long, m As Long<br />
alt = InputBox("Alter: ", "Los!", "30")<br />
ki = InputBox("Anzahl Kinder: ", "Los!", "2")<br />
MsgBox Gehalt(alt) & ", " & Brutto1(alt, ki)<br />
MsgBox Brutto2(alt, ki) & ", " & Brutto3(alt, ki)<br />
t = InputBox("Tag: ", "Los!", "13")<br />
m = InputBox("Monat: ", "Los!", "11")<br />
MsgBox Jahreszeit(t, m) & ", " & Season(t, m)<br />
End Sub<br />
<br />
<br />
<br />
• <br />
• <br />
•
Dim i As Long<br />
For i = Anfangswert To Endwert [ Step Schritt ]<br />
Anweisung(en)<br />
[ Exit For ]<br />
Anweisung(en)<br />
Next i<br />
i Anfangswert <br />
Schritt <br />
Schritt <br />
Endwert <br />
<br />
Exit For <br />
<br />
<br />
<br />
1 n <br />
<br />
100<br />
i=1<br />
n<br />
i = n(n + 1)/2,<br />
i=1<br />
i = 100 · 101/2 = 5050.<br />
<br />
Function MeineSumme(ByVal n As Long) As Long<br />
Dim i As Long<br />
MeineSumme = 0<br />
For i = 1 To n<br />
MeineSumme = MeineSumme + i<br />
Next i<br />
End Function<br />
<br />
<br />
<br />
<br />
<br />
<br />
InStr()
InStr() <br />
<br />
Function KillSz(ByRef s As String) As String<br />
Dim i As Long<br />
KillSz = ""<br />
For i = 1 To Len(s)<br />
If Mid(s, i, 1) = "ß" Then<br />
KillSz = KillSz & "ss"<br />
Else<br />
KillSz = KillSz & Mid(s, i, 1)<br />
End If<br />
Next i<br />
End Function<br />
<br />
i <br />
<br />
<br />
<br />
<br />
Function WegMitUmlauten(ByRef S As String) As String<br />
Dim i As Long<br />
WegMitUmlauten = ""<br />
For i = 1 To Len(S)<br />
Select Case Mid(S, i, 1)<br />
Case "Ä": WegMitUmlauten = WegMitUmlauten & "Ae"<br />
Case "ä": WegMitUmlauten = WegMitUmlauten & "ae"<br />
Case "Ö": WegMitUmlauten = WegMitUmlauten & "Oe"<br />
Case "ö": WegMitUmlauten = WegMitUmlauten & "oe"<br />
Case "Ü": WegMitUmlauten = WegMitUmlauten & "Ue"<br />
Case "ü": WegMitUmlauten = WegMitUmlauten & "ue"<br />
Case Else: WegMitUmlauten = WegMitUmlauten & Mid(S, i, 1)<br />
End Select<br />
Next i<br />
End Function
Do Loop <br />
While Until <br />
While Until <br />
Do <br />
Loop <br />
<br />
Do<br />
Anweisung(en)<br />
[Exit Do]<br />
Anweisung(en)<br />
Loop While(Wiederholungsbedingung)<br />
nächste Anweisung<br />
Do Loop While <br />
<br />
<br />
<br />
<br />
<br />
<br />
• <br />
• <br />
• <br />
• <br />
<br />
• Exit Do <br />
<br />
<br />
<br />
Dim Jahr As Long<br />
Do<br />
Jahr = CInt(InputBox("Bitte Geburtsjahr eingeben: ","1978"))<br />
Loop While (1900 > Jahr Or Jahr > 1990)
Until <br />
<br />
Do<br />
Anweisung(en)<br />
[Exit Do]<br />
Anweisung(en<br />
Loop Until(Abbruchbedingung))<br />
<br />
<br />
<br />
<br />
<br />
Dim Jahr As Long<br />
Do<br />
Jahr = CInt(InputBox("Bitte Geburtsjahr eingeben: ","1978"))<br />
Loop Until (1900
i = i Mod j<br />
h = i : i = j : j = h<br />
Loop While (j > 0)<br />
’oder Loop Until (j = 0)<br />
Ggt = i<br />
End Function<br />
<br />
<br />
<br />
<br />
Do While (Wiederholungsbedingung)<br />
Anweisung(en)<br />
[Exit Do]<br />
Anweisung(en<br />
Loop<br />
<br />
<br />
<br />
<br />
<br />
<br />
While (Wiederholungsbedingung)<br />
Anweisung(en)<br />
[Exit While]<br />
Anweisung(en<br />
Wend<br />
<br />
Exit Do Exit While<br />
<br />
<br />
While Until <br />
<br />
Do Until (Abbruchbedingung)<br />
Anweisung(en)<br />
[Exit Do]<br />
Anweisung(en<br />
Loop
Function Zaehle(ByRef gesamt As String, _<br />
ByRef teil As String) As Long<br />
Dim i As Long<br />
Zaehle = 0 : i = 1<br />
Do While (InStr(i, gesamt, teil) > 0)<br />
’oder<br />
’Do Until (InStr(i, gesamt, teil)
Do While (a > 0)<br />
’Oder: Do Until (a = 0)<br />
Quersumme = Quersumme + a Mod 10<br />
a = (a - a Mod 10) / 10<br />
Loop<br />
End Function<br />
<br />
<br />
<br />
<br />
<br />
Sub SchleifenTest()<br />
MsgBox "Summe der Zahlen von 1 bis 100: " & MeineSumme(100)<br />
MsgBox "Aus Walroßfüße wird: " & KillSz("Walroßfüße")<br />
MsgBox "Aus Ää Öö Üü wird: " & WegMitUmlauten("Ää Öö Üü")<br />
MsgBox "Größter gemeinsamer Teiler von 96 und 54: " _<br />
& Ggt(96, 54)<br />
MsgBox "Quersumme von 1234567: " & Quersumme(1234567)<br />
MsgBox Zaehle("Fischers Fritz fischt frische Fische", "sch")<br />
End Sub
i n <br />
2i − 1 <br />
*<br />
***<br />
*****<br />
*******<br />
’usw<br />
<br />
n 2i − 1 i <br />
vbNewLine <br />
Halbtanne() <br />
<br />
<br />
Function HalbTanne(ByVal n As Long) As String<br />
Dim i, j As Long<br />
HalbTanne = ""<br />
For i = 1 To n<br />
For j = 1 To 2 * i - 1<br />
HalbTanne = HalbTanne & "*"<br />
Next j<br />
HalbTanne = HalbTanne & vbNewLine<br />
Next i<br />
End Function<br />
<br />
Sub TestHalbTanne()<br />
Dim i As Long<br />
i = InputBox("Bitte Anzahl der Zeilen eingeben: ", "", "12")<br />
MsgBox HalbTanne(i)<br />
End Sub
Sub DreiSchleifen()<br />
Dim x As Double, s As String, b As Boolean<br />
Do Until (UCase(InputBox("Wollen sie wirklich? Ja/Nein ", _<br />
"Tu’s nicht", "Nein")) = "NEIN")<br />
Do<br />
Do<br />
s = InputBox("Positive Zahl eingeben: ", "", "0")<br />
b = IsNumeric(s)<br />
If (Not b) Then MsgBox "Zahlen!"<br />
Loop Until (b)<br />
x = CDbl(s)<br />
If x
• Exit Do <br />
<br />
<br />
Exit Do <br />
<br />
• Exit For <br />
<br />
<br />
Exit For <br />
<br />
• Exit While <br />
<br />
Exit While <br />
Exit While <br />
Exit While <br />
• Exit Select <br />
<br />
Exit Select <br />
<br />
• Exit Function <br />
<br />
Exit Function <br />
<br />
• Exit Sub <br />
<br />
Exit Sub <br />
<br />
<br />
Randomize <br />
<br />
<br />
Exit Sub <br />
Exit Do Rnd() <br />
demoNum <br />
<br />
<br />
<br />
Sub exitStatementDemo()<br />
Dim demoNum As Single, i As Long, j As Long
Randomize<br />
Do<br />
j = j + 1<br />
For i = 1 To 10<br />
demoNum = Int(Rnd() * 100)<br />
Select Case demoNum<br />
Case 7: Exit For<br />
Case 29: Exit Do<br />
Case 54<br />
MsgBox "Exit Sub bei j: " & j & ", i = " & i<br />
Exit Sub<br />
End Select<br />
Next i<br />
Loop<br />
MsgBox "Exit Do bei j: " & j & ",i = " & i<br />
End Sub<br />
<br />
<br />
<br />
<br />
GoTo Marke Marke <br />
<br />
<br />
<br />
x <br />
1/x <br />
Beratung <br />
Ende Eingabe<br />
Sub GoToTest()<br />
Dim x As Double, aus As String<br />
Eingabe:<br />
x = InputBox("Bitte Zahl 0 eingeben: ", "Tu’s!", "1")<br />
If (x = 0) Then GoTo Beratung<br />
MsgBox "x = " & x & ", 1/x = " & 1 / x<br />
GoTo Ende<br />
Beratung:<br />
MsgBox "Die Zahl " & x & " ist nicht positiv!"
GoTo Eingabe<br />
<br />
Ende:<br />
aus = InputBox("Nochmal? Ja/Nein ", "Tu’s nicht", "Nein")<br />
If UCase(aus) = "JA" Then GoTo Eingabe<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
On Error Resume Next<br />
On Error GoTo Marke<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Sub OnErrorTest()<br />
Dim x As Double, aus As String<br />
On Error GoTo Ende<br />
x = InputBox("Bitte Zahl 0 eingeben: ", "Tu’s!", "1")<br />
MsgBox "x = " & x & ", 1/x = " & 1 / x<br />
Exit Sub<br />
Ende:<br />
aus = aus & "Sie begingen Fehler <strong>mit</strong> Nummer " & Err & "!"<br />
aus = aus & vbNewLine & Error & "!"<br />
MsgBox aus, vbCritical, "Aufpassen!"<br />
Resume Next<br />
End Sub<br />
Err <br />
<br />
Error
GoTo Eingabe<br />
<br />
Ende:<br />
aus = InputBox("Nochmal? Ja/Nein ", "Tu’s nicht", "Nein")<br />
If UCase(aus) = "JA" Then GoTo Eingabe<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
On Error Resume Next<br />
On Error GoTo Marke<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Sub OnErrorTest()<br />
Dim x As Double, aus As String<br />
On Error GoTo Ende<br />
x = InputBox("Bitte Zahl 0 eingeben: ", "Tu’s!", "1")<br />
MsgBox "x = " & x & ", 1/x = " & 1 / x<br />
Exit Sub<br />
Ende:<br />
aus = aus & "Sie begingen Fehler <strong>mit</strong> Nummer " & Err & "!"<br />
aus = aus & vbNewLine & Error & "!"<br />
MsgBox aus, vbCritical, "Aufpassen!"<br />
Resume Next<br />
End Sub<br />
Err <br />
<br />
Error
Function Schaltjahr(ByVal j As Long) As Long<br />
Schaltjahr = 0<br />
If (j Mod 400 = 0) Or (j Mod 4 = 0 And j Mod 100 0) _<br />
Then Schaltjahr = 1<br />
End Function<br />
Schaltjahr <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Function LaufendeNr(ByVal j As Long, ByVal m As Long, _<br />
ByVal t As Long) As Long<br />
If (m < 3) Then<br />
LaufendeNr = (m - 1) * 31<br />
ElseIf (m < 9) Then<br />
LaufendeNr = (m - 1) * 30 + (m - 1) \ 2 + Schaltjahr(j) - 2<br />
Else<br />
LaufendeNr = 243 + Schaltjahr(j) + (m - 9) * 30 + (m - 9)\2<br />
End If<br />
LaufendeNr = LaufendeNr + t<br />
End Function<br />
m - 1 <br />
t <br />
j
Function TageSeitGregor(ByVal j As Long, ByVal m As Long, _<br />
ByVal t As Long) As Long<br />
Dim i As Long<br />
TageSeitGregor = LaufendeNr(j, m, t)<br />
For i = 1582 To j - 1<br />
TageSeitGregor = TageSeitGregor + 365 + Schaltjahr(i)<br />
Next i<br />
End Function<br />
j <br />
LaufendeNr() <br />
i <br />
j - 1 TageSeitGregor <br />
<br />
TageSeitGregor(j, m, t) <br />
<br />
TageSeitGregor(j, m, t) + 4) Mod 7 <br />
WTag(j, m, t) <br />
TageSeitGregor(j, m, t) <br />
Function WTag(ByVal j As Long, ByVal m As Long, _<br />
ByVal t As Long) As String<br />
Select Case (TageSeitGregor(j, m, t) + 4) Mod 7<br />
Case 0: WTag = "Sonntag"<br />
Case 1: WTag = "Montag"<br />
Case 2: WTag = "Dienstag"<br />
Case 3: WTag = "Mittwoch"<br />
Case 4: WTag = "Donnerstag"<br />
Case 5: WTag = "Freitag"<br />
Case Else: WTag = "Samstag"<br />
End Select<br />
End Function<br />
Case
Sub KalenderTest()<br />
MsgBox WTag(1999, 11, 13) & ", der 13.11.1999 war der " _<br />
& LaufendeNr(1999, 11, 13) & " Tag des Jahres, und der " _<br />
& TageSeitGregor(1999, 11, 13) & " Tag seit dem 1.1.1582."<br />
End Sub<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
AnzTage() <br />
<br />
Select Case If <br />
ElseIf <br />
<br />
<br />
True False <br />
<br />
<br />
<br />
<br />
<br />
AnzTageNeu() <br />
<br />
<br />
<br />
<br />
<br />
<br />
<br />
Tannenbaum(Byval N As Long) <br />
N
*<br />
***<br />
*****<br />
*******<br />
*********<br />
N = 5 N <br />
<br />
<br />
MyHour(d) MyMinute(d) <br />
MyHour(0) = 0 <br />
MyMinute(0) = 0 MyHour(1) = 24 MyMinute(1) = 0 <br />
MyYear(d) MyMonth(d) MyDay(d)<br />
<br />
d = 152623
*<br />
***<br />
*****<br />
*******<br />
*********<br />
N = 5 N <br />
<br />
<br />
MyHour(d) MyMinute(d) <br />
MyHour(0) = 0 <br />
MyMinute(0) = 0 MyHour(1) = 24 MyMinute(1) = 0 <br />
MyYear(d) MyMonth(d) MyDay(d)<br />
<br />
d = 152623
*<br />
***<br />
*****<br />
*******<br />
*********<br />
N = 5 N <br />
<br />
<br />
MyHour(d) MyMinute(d) <br />
MyHour(0) = 0 <br />
MyMinute(0) = 0 MyHour(1) = 24 MyMinute(1) = 0 <br />
MyYear(d) MyMonth(d) MyDay(d)<br />
<br />
d = 152623
*<br />
***<br />
*****<br />
*******<br />
*********<br />
N = 5 N <br />
<br />
<br />
MyHour(d) MyMinute(d) <br />
MyHour(0) = 0 <br />
MyMinute(0) = 0 MyHour(1) = 24 MyMinute(1) = 0 <br />
MyYear(d) MyMonth(d) MyDay(d)<br />
<br />
d = 152623
*<br />
***<br />
*****<br />
*******<br />
*********<br />
N = 5 N <br />
<br />
<br />
MyHour(d) MyMinute(d) <br />
MyHour(0) = 0 <br />
MyMinute(0) = 0 MyHour(1) = 24 MyMinute(1) = 0 <br />
MyYear(d) MyMonth(d) MyDay(d)<br />
<br />
d = 152623