Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Formel mit Zellbezug

Formel mit Zellbezug
26.03.2015 14:05:45
Müller
Hallo zusammen....
ich möchte über VBA die Möglichkeit gewähren, Zeilen in einer bereits ausgefüllten Tabelle einfügen....das funktioniert auch soweit...
Problematisch ist, dass ich in den Zellen mehrere längere Formeln mit Zellbezug habe, z.B.

=WENN(UND($K408="ü";NICHT(ODER($H408=$H$20;$H408=$H$22)));$I408+T407;T407)

So bezieht sich die Formel immer auf eine vorherige Zelle. In dem Fall T408 auf T407....wenn ich nun über VBA eine Zeile einfüge, kopiert er die Formeln mit, aber in der alten Zeile bleibt der Zellbezug von T407 vorhanden und wird nicht automatisch angepasst!
Es gibt bestimmt eine einfache Möglichkeit die Formel so anzupassen, dass das Löschen/Einfügen von Zeilen kein Problem darstellt?!
Kann mir jmd helfen?
Ich wäre euch sehr dankbar :-)

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel mit Zellbezug
26.03.2015 14:25:47
Daniel
Hi
ersetze den Zellbezug auf die Zelle oben drüber (T407) durch folgenden Ausdruck:
=Index(T:T;Zeile()-1)
oder durch:
=Indirekt("Z(-1)S";0)
(wobei Indirekt den Nachteil der voaltilität hätte)
Gruß Daniel

dazu nutze INDEX() ...
26.03.2015 14:28:04
der
Hallo,
... so: =INDEX(T:T;ZEILE()-1)
Gruß Werner
.. , - ...

Anzeige
AW: dazu nutze INDEX() ...
26.03.2015 15:09:50
Müller
Vielen Dank :-)
ich habe noch eine kleine andere Frage. Und zwar habe ich folgenden Code zum Zeilen einfügen:
Sub Zeileeinfügen()
' Aktuelle Zeile kopieren, unterhalb Zeile einfügen und Inhalte in Zellen ohne Formel löschen
Dim Zelle As Range
Dim Zeile As Range
Set Zeile = Range("C:DP")
ActiveCell.EntireRow.Copy
Cells(ActiveCell.Row + 1, 1).Insert Shift:=xlDown
For Each Zelle In Range(Cells(ActiveCell.Row + 1, 1), Cells(ActiveCell.Row + 1, 255).End( _
xlToLeft))
If Not ActiveCell.Zeile.HasFormula Then
ActiveCell.Zeile.ClearContents
End If
Next Zelle
Cells(ActiveCell.Row + 1, 1).Select
End Sub
nun möchte ich, dass für den Bereich des Inhalts löschen nur jeweils der Bereich von "C:DP" berücksichtigt wird. Im Moment wird immer die ganze aktive Zeile angesporchen, da aber teilweise Zellen verbunden sind, funktioniert das ganze nicht!
Wie kann ich dies für die aktive Zelle in dem Bereich festlegen?
Danke!!!!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige