ich habe folgendes Problem: Ich habe unter EINFÜGEN/NAMEN mehrere Bereiche festgelegt. So z.B. auch "Loeschen_T1". Diese Bereiche sind bis zu einer Ende/Summenzeile definiert. Über einen Dialog "Neuer Teilnehmer" füge ich dann einen neuen Datensatz in das Calc-Sheet ein. Dadurch verschiebt sich die Ende/Summenzeile, wodurch ich auch dort die entsprechenden Formeln um die Bereichsvergrößerung erweitere. Soweit ist alles gut.
Nun habe ich auch eben diese Bereichs-Namen definiert, die bis zu dieser Ende/Summenzeile reichen (dienen eigentlich nur zum schnellen Löschen bestimmter Datenbereiche). Nun möchte ich aber, dass auch diese Bereiche an den erweiterten Zellenbereich angepasst werden.
Nur das schaffe ich offenbar nicht. Was mache ich da falsch?
Der Code sieht dazu folgendermaßen aus:
Code: Alles auswählen
sub chgCellRanges(LastRow)
'Definierte ZellBereiche an neue Größe anpassen
dim oRanges, oCellRange, oRefCells, oRefAdr as object
dim iEndRow as long
dim sAdr as string
oRanges = oDocTN.namedRanges
oCellRange = oRanges.getByName("Loeschen_T1")
oRefCells = oCellRange.referredCells
sAdr = rString(oRefCells.absoluteName,"$") + LastRow
oRefCells.setPropertyValue("AbsoluteName",sAdr)
oRefAdr = oRefCells.rangeAddress
iEndRow = oRefAdr.EndRow
oRefAdr.EndRow = LastRow
end sub
function rString(pStr as string, sFind as string)
dim iPos as integer
for iPos = len(pStr) to 0 step -1
if mid(pStr,iPos,1) = "$" then
rString = left(pStr,iPos)
exit function
end if
next iPos
end function
Aber wenn ich dann den Namen (im Beispiel "Loeschen_T1") wieder aufrufe, steht immer noch das Alte drinnen!? Der Bereich ist unverändert.
Viele Grüße
HKönig