ich lasse über ein Array Daten aus einer Tabelle in eine Kalendertabelle eintragen.
wie bekomme ich es hin, dass in der gleichen Tabelle bei Spalte 10 noch ein Text eingetragen wird, den ich vorher in einem Stringvariable definiere.
die Anderen Werte des Arrays zieht er sich aus der Tabelle, das klappt auch ganz gut.
Hier der Code:
Sub Kalendertabelle_aufbauen()
Dim lngSchuelerzeile As Long, lngKalendertabellenzeile As Long, i As Long
Dim strSchuelerzeitslotspalte As String, strSchuelernachname As String, _
strSchuelervorname As String, strSchuelerIDSpalte As String, strSchuelerEMailSpalte As String, strDatenherkunft
Dim varSchülerzeitslots As Variant, varKalendertabelle As Variant, varZeilen As Variant, varSpalten As Variant
ReDim varKalendertabelle(1 To 2000, 1 To 10)
lngKalendertabellenzeile = 0
With t02_schuelerliste
strSchuelerzeitslotspalte = VBA.Split(.Range("A14").Formula, "$")(1)
strSchuelernachname = VBA.Split(.Range("A15").Formula, "$")(1)
strSchuelervorname = VBA.Split(.Range("A16").Formula, "$")(1)
strSchuelerIDSpalte = VBA.Split(.Range("A17").Formula, "$")(1)
strSchuelerEMailSpalte = VBA.Split(.Range("A18").Formula, "$")(1)
strDatenherkunft = "Angegebener Freislot"
For lngSchuelerzeile = 15 To .UsedRange.Rows.Count + 15
If .Range(strSchuelerzeitslotspalte & lngSchuelerzeile).Value "" Then
varZeilen = Split(.Range(strSchuelerzeitslotspalte & lngSchuelerzeile).Value, "")
For i = LBound(varZeilen) To UBound(varZeilen)
If varZeilen(i) "" And lngKalendertabellenzeile "" And IsDate(varSpalten(1)) Then
'Datum eintragen
varKalendertabelle(lngKalendertabellenzeile, 1) = varSpalten(1)
'Flexibler Drilldown
varKalendertabelle(lngKalendertabellenzeile, 2) = .Range(strSchuelernachname & lngSchuelerzeile).Value & " " & .Range(strSchuelervorname & lngSchuelerzeile).Value
'Zeit von anzeigen
varKalendertabelle(lngKalendertabellenzeile, 3) = varSpalten(2)
'Zeit bis anzeigen
varKalendertabelle(lngKalendertabellenzeile, 4) = varSpalten(3)
'Bemerkung
varKalendertabelle(lngKalendertabellenzeile, 5) = varSpalten(4)
'Schüler ID eintragen
varKalendertabelle(lngKalendertabellenzeile, 6) = .Range(strSchuelerIDSpalte & lngSchuelerzeile).Value
'Schueler E-Mail eintragen
varKalendertabelle(lngKalendertabellenzeile, 7) = .Range(strSchuelerEMailSpalte & lngSchuelerzeile).Value
End If
End If
Next i
End If
Next lngSchuelerzeile
t05_kalendertabelle.Range("A2:AA10000").ClearContents
t05_kalendertabelle.Range("A2:G2001") = varKalendertabelle
End With
End Sub
Also ich möchte, dass wenn er diese Routine aufruft, in die VarKalendertabellezeile , 8 einfach nur den Begriff Freislot einträgt. Wie geht das?Vielen dank schonmal
Gruß
Benedikt