Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1896to1900
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Datenherkunft eintragen

Datenherkunft eintragen
10.09.2022 20:29:11
BeLangmantl
Hallo,
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

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datenherkunft eintragen
10.09.2022 20:42:44
Oberschlumpf
Hi,
was spricht denn dagegen, dass du innerhalb von

If varSpalten(1)  "" And IsDate(varSpalten(1)) Then
varKalendertabelle(lngKalendertabellenzeile, 8) = "Freislot"
End If
hinzufügst?
Ciao
Thorsten
AW: Datenherkunft eintragen
10.09.2022 20:54:19
BeLangmantl
Leider geht es nicht, wird nichts angezeigt
AW: Datenherkunft eintragen
10.09.2022 21:14:31
Oberschlumpf
ähh? und WAS soll ich nun mit dieser Aussage von dir anfangen?
AW: Datenherkunft eintragen
10.09.2022 21:18:12
BeLangmantl
Wie gesagt, möchte dass in der Tabelle Freislot angezeigt wird Ich habe das eingebaut von dir

objKalender(varKalendertabelle(lngKalendertabelle,1) &"|" & varKalendertabelle(lngKalendertabelle,2))
aber er zeigt nichts an, leider in der Tabelle
Anzeige
AW: Datenherkunft eintragen
10.09.2022 21:17:41
Oberschlumpf
änder auch diese Zeile...

t05_kalendertabelle.Range("A2:G2001") = varKalendertabelle
...um in...

t05_kalendertabelle.Range("A2:H2001") = varKalendertabelle
Da du zuvor im Array eine zusätzliche Spalte mit Daten befüllst, musst du natürlich bei Rückgabe Array in Tabelle auch in der Tabelle eine zusätzliche Spalte ansprechen.
Hilfts?
AW: Datenherkunft eintragen
10.09.2022 21:23:43
BeLangmantl
Habe den Range geändert, geht aber immer noch nicht

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
'Datenherkunft Freislot eintragen
varKalendertabelle(lngKalendertabellenzeile, 10) = "Freislot"
End If
End If
Next i
End If
Next lngSchuelerzeile
t05_kalendertabelle.Range("A2:AA10000").ClearContents
t05_kalendertabelle.Range("A2:J2001") = varKalendertabelle
End With
End Sub

Anzeige
AW: Datenherkunft eintragen
10.09.2022 21:26:22
Oberschlumpf
sorry, ich bin raus - verstehe nun noch weniger als vorher (vielleicht auch schon nicht)
helfen könnte - du weißt das! bist ja nich erst seit gestern hier - von dir eine bsp-datei mit genügend bsp-daten an den richtigen stellen
vielleicht wird dann wer anders schlauer daraus.
AW: Datenherkunft eintragen
10.09.2022 21:28:43
BeLangmantl
Danke dir, ich habe das Problem selber gelöst, hätte anstatt das Wort Freislot einfach den String definieren müssen, habs nun selber gelöst, aber danke dir
Gruß

varKalendertabelle(lngKalendertabellenzeile, 10) = strDatenherkunft

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige