Von Array in Tabelle schreiben
19.07.2003 16:48:38
Jens_Pu
brauche mal wieder Eure Hilfe.
Momentan schreibe ich die in einem Array befindlichen Werte mit einer Schleife in ein Tabellenblatt. Das dauert aber relativ lange. Das geht doch auch schneller. Ich bekomme das aber nicht hin.
Mein Code sieht bisher so aus:
Option Explicit
Public Type Mitglied 'Benutzerfefinierter Datentyp
nr As Long '1
NN As String * 25 '2
VN As String * 20 '3
Geschl As String * 1 '4
P(1 To 8) As Integer '5-12 Paarung 1-8
E(1 To 8) As Integer '13-20 Ergebnis 1-8
SumE As Integer '21 Summe der Ergebnisse 1-8
Punkte(1 To 8) As Integer '22-29 Punkte 1-8
SumPunkte As Integer '30 Summe Punkte 1-8
Spieldiff(1 To 8) As Integer '31-38 SpieleDifferenz 1-8
SumSpieldiff As Integer '39 Summe Spieldiff 1-8
Rang(1 To 8) As Integer '40-47 Rang pro Runde und gesamt
RangGes As Integer '48 Rang Gesamt
End Type
Public gTln() As Mitglied
Public gAnzTeilnehmer As Long 'Anzahl der Teilnemer
Sub Drucken(listArt As Integer, listOpt As Integer)
Dim l As Long
Application.ScreenUpdating = False
'Blatt Ausdruck leer machen
wksDruck.UsedRange.Delete
'TeilnehmerListe in Array einlesen
Call LeseTeilnehmerListe(True)
'Listen erzeugen
Select Case listArt
Case 1 'Teilnehmerliste
If listOpt = 1 Then 'alle
For l = 1 To gAnzTeilnehmer
With wksDruck
.Range(.Cells(l, 1), .Cells(l, 1)).Value = gTln(l - 1).nr
.Range(.Cells(l, 2), .Cells(l, 2)).Value = _
Trim(gTln(l - 1).NN) & " " & Trim(gTln(l - 1).VN)
End With
Next l
ElseIf listOpt = 2 Then 'm
ElseIf listOpt = 3 Then 'w
End If
Case 2 'Liste2
Case 3 'Liste3
End Select
Application.ScreenUpdating = True
MsgBox ("Liste erzeugt!")
End Sub
Gruss Jens