AW: array, Datenfelder und co
06.05.2012 11:32:50
ransi
HAllo
Arrays aus einem Tabellenbereich sind eigentlich recht unkompliziert.
Schau dir den Code mal an. Der ist recht einfach nachzuvollziehen
Das sind deine Daten:
| A | B | C | D |
1 | 10 | 0 | 0 | 4 |
2 | 6 | 9 | 7 | -10 |
3 | -10 | 1 | -5 | -5 |
4 | 8 | 2 | -2 | 10 |
5 | 2 | -8 | 10 | -3 |
6 | 5 | -2 | -1 | -10 |
7 | -5 | -6 | -5 | -2 |
8 | -4 | 9 | 3 | 5 |
9 | 10 | -7 | -2 | -10 |
10 | -3 | 0 | 0 | 8 |
11 | 7 | -2 | 9 | -1 |
12 | 6 | 3 | -10 | -9 |
13 | -3 | 4 | 8 | 7 |
14 | -1 | 1 | -10 | -3 |
15 | -6 | 5 | -1 | -9 |
16 | -3 | 3 | 5 | 0 |
17 | -2 | 8 | 1 | 10 |
18 | -4 | -8 | -4 | 2 |
19 | -9 | -7 | -7 | -7 |
20 | -5 | -6 | -5 | 4 |
Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
| A | B | C | D |
1 | größer 0 | gleich 0 | gleich 0 | größer 0 |
2 | größer 0 | größer 0 | größer 0 | kleiner 0 |
3 | kleiner 0 | größer 0 | kleiner 0 | kleiner 0 |
4 | größer 0 | größer 0 | kleiner 0 | größer 0 |
5 | größer 0 | kleiner 0 | größer 0 | kleiner 0 |
6 | größer 0 | kleiner 0 | kleiner 0 | kleiner 0 |
7 | kleiner 0 | kleiner 0 | kleiner 0 | kleiner 0 |
8 | kleiner 0 | größer 0 | größer 0 | größer 0 |
9 | größer 0 | kleiner 0 | kleiner 0 | kleiner 0 |
10 | kleiner 0 | gleich 0 | gleich 0 | größer 0 |
11 | größer 0 | kleiner 0 | größer 0 | kleiner 0 |
12 | größer 0 | größer 0 | kleiner 0 | kleiner 0 |
13 | kleiner 0 | größer 0 | größer 0 | größer 0 |
14 | kleiner 0 | größer 0 | kleiner 0 | kleiner 0 |
15 | kleiner 0 | größer 0 | kleiner 0 | kleiner 0 |
16 | kleiner 0 | größer 0 | größer 0 | gleich 0 |
17 | kleiner 0 | größer 0 | größer 0 | größer 0 |
18 | kleiner 0 | kleiner 0 | kleiner 0 | größer 0 |
19 | kleiner 0 | kleiner 0 | kleiner 0 | kleiner 0 |
20 | kleiner 0 | kleiner 0 | kleiner 0 | größer 0 |
Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Option Explicit
Public Sub machs()
Dim vntArr As Variant
Dim lngZeile As Long
Dim intSpalte As Integer
vntArr = Sheets("Tabelle1").Range("A1:D20") 'Tabellenbereich in ein Array laden
For lngZeile = 1 To UBound(vntArr, 1) 'Schleife über die Zeilen
For intSpalte = 1 To UBound(vntArr, 2) 'Schleife über die Spalten
Select Case vntArr(lngZeile, intSpalte) 'Werte im Array bearbeiten
Case Is < 0
vntArr(lngZeile, intSpalte) = "kleiner 0"
Case Is = 0
vntArr(lngZeile, intSpalte) = "gleich 0"
Case Is > 0
vntArr(lngZeile, intSpalte) = "größer 0"
End Select
Next
Next
Sheets("Tabelle1").Range("A1:D20") = vntArr 'Array wieder in die Tabelle zurückschreiben
End Sub
ransi