Microsoft Excel

Herbers Excel/VBA-Archiv

Fixen Zellbezug variabel machen

Betrifft: Fixen Zellbezug variabel machen von: alex
Geschrieben am: 28.08.2014 17:05:02

Hallo,

ich möchte folgende Formeln schnell anlegen können:

A2/$A$1-1
A3/$A$1-1
A4/$A$1-1
... usw

in Spalte B soll dies wie folgt aussehen:
B3/$B$2-1
B4/$B$2-1
... usw

Ich möchte also, dass der fixe Zellbezug nur beim Kopieren nach unten beibehalten wird. wenn ich nach rechts kopiere, soll immer eine Zelle nach unten als fixe Zelle genommen werden.

Die Anzahl der Werte nimmt also nach Spalte ab

x
xx
xxx
xxxx
xxxxx

Ist das verständlich?

  

Betrifft: AW: Fixen Zellbezug variabel machen von: Daniel
Geschrieben am: 28.08.2014 17:45:31

Hi
in welchen Zellen soll welche Formel stehen?

Gruß Daniel


  

Betrifft: =A2/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4))-1 von: NoNet
Geschrieben am: 28.08.2014 17:47:19

Hallo Alex,

etwas unverständlich ist diese Aufgabenstellung schon, ich habe sie mal nach meinem Verständnis bearbeitet (für Zahlenvorgaben in A1:D10 und Rechenfunktionen in E1:H10) :

Gib in E1 folgende Funktion ein und kopiere sie nach unten und nach rechts :

=A2/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4))-1

Lösche nun die Zellen, die diese Funktion überflüssigerweise beinhalten !

Oder auch einfach per VBA nur in den relevanten Bereich eintragen :

Sub Funktion_Relativ()
    Dim lngS As Long
    
    'Funktion in E1:E10, F2:F10, G2:G10, H2:H10 eintragen :
    For lngS = 1 To 4
        Cells(lngS, 4 + lngS).Resize(11 - lngS).FormulaR1C1 = _
            "=R[1]C[-4]/INDIRECT(ADDRESS(COLUMN()-4,COLUMN()-4))-1"
    Next
End Sub
Das Ergebnis :
ABCDEFGH
1
2
3
4
5
6
7
8
9
10

Funktionen im Tabellenblatt
Zelle Formel 
E1   =A2/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E2   =A3/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E3   =A4/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E4   =A5/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E5   =A6/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E6   =A7/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E7   =A8/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E8   =A9/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E9   =A10/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
E10   =A11/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F2   =B3/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F3   =B4/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F4   =B5/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F5   =B6/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F6   =B7/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F7   =B8/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F8   =B9/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F9   =B10/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
F10   =B11/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G3   =C4/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G4   =C5/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G5   =C6/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G6   =C7/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G7   =C8/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G8   =C9/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G9   =C10/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
G10   =C11/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
H4   =D5/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
H5   =D6/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
H6   =D7/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
H7   =D8/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
H8   =D9/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
H9   =D10/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)
H10   =D11/INDIREKT(ADRESSE(SPALTE()-4;SPALTE()-4)

Tabelle eingefügt mit Syntaxhighlighter 4.15

Gruß, NoNet


 

Beiträge aus den Excel-Beispielen zum Thema "Fixen Zellbezug variabel machen"