Formel Problem - Denkanstoss

Hallo zusammen,

ich würde gern eine einfache Formel erstellen:
Einmal habe ich in Zeile 1 von B an die Zahlen von 10 bis 100.
Dann nochmal in Zeile A von 2 an die Zahlen 10 bis 100.
Nun soll mir Zelle B2 folgendes Ergebniss ausrechnen:
=B1/A2 (also 10/10) Ergebniss: 1,00
Dann Zelle C2:
=C1/A2 (also 11/10) Ergebniss: 1,10
usw.
Ebenso nach unten bis die Tabelle komplett ist.
Leider übernimmt Excel immer die vorherige Zelle in der Formel beim kopieren!
Beispiel:
=C1/A3 (also 11/1,10)
Wie kann ich das umgehen? Er soll sich in der ersten Zeile waagerecht immer auf Zelle A2 beziehen.
In der ersten Spalte abwärts soll er immer Zelle B1 durch A2,A3,A4… teilen.
Ich hoffe ich konnte das irgendwie halbwegs logisch rüber bringen.
Wäre toll wenn mir da jemand helfen könnte.

Vielen Dank!

ich würde gern eine einfache Formel erstellen:
Einmal habe ich in Zeile 1 von B an die Zahlen von 10 bis 100.
Dann nochmal in Zeile A von 2 an die Zahlen 10 bis 100.
Nun soll mir Zelle B2 folgendes Ergebniss ausrechnen:
=B1/A2 (also 10/10) Ergebniss: 1,00
Dann Zelle C2:
=C1/A2 (also 11/10) Ergebniss: 1,10
usw.
Wie kann ich das umgehen? Er soll sich in der ersten Zeile
waagerecht immer auf Zelle A2 beziehen.
In der ersten Spalte abwärts soll er immer Zelle B1 durch
A2,A3,A4… teilen.

Moin Chilli1,

schau mal in der Hilfe oder in Büchern nach absoluten/relativen Zellbezügen, das ist wichtig zu wissen.

Tabellenblatt: [Mappe1]!Tabelle1
 │ A │ B │ C │ D │
──┼────┼──────┼──────┼──────┤
1 │ │ 10 │ 11 │ 12 │
──┼────┼──────┼──────┼──────┤
2 │ 10 │ 1,00 │ 1,10 │ 1,20 │
──┼────┼──────┼──────┼──────┤
3 │ 11 │ 0,91 │ 1,00 │ 1,09 │
──┼────┼──────┼──────┼──────┤
4 │ 12 │ 0,83 │ 0,92 │ 1,00 │
──┴────┴──────┴──────┴──────┘
Benutzte Formeln:
B2: =B$1/$A2
B3: =B$1/$A3
B4: =B$1/$A4
C2: =C$1/$A2
C3: =C$1/$A3
C4: =C$1/$A4
D2: =D$1/$A2
D3: =D$1/$A3
D4: =D$1/$A4

Zahlenformate der Zellen im gewählten Bereich:
A1:A4,B1:smiley:1
haben das Zahlenformat: Standard
B2:B4,C2:C4,D2:smiley:4
haben das Zahlenformat: 0,00

Tabellendarstellung erreicht mit dem Code in FAQ:2363

Gruß
Reinhard

Hi,

vielen Dank für die schnelle und präzise Antwort!
Bin da leider nicht so bewandelt, aber das funzt ja einwandfrei.

Gibt es nun noch die Möglichkeit, sich gleiche Ergebnisse raus zu filtern?
Wenn ich z.B. die Maße 30x20 habe, dann kommt da ja 1,50 raus.
Nun wüsste ich gern, wie gross ich eine Seite haben muss, damit da wieder 1,50 raus kommt?!
Also z.B. 36/24. Das kann ich ja nun nachschauen, aber bei so vielen Zahlen, wäre es einfacher wenn man sich das anzeigen lassen kann…
Ist das machbar?
Es soll mir das ausrechnen von individuellen Bildgrössen vereinfachen!

Vielen Dank schonmal!

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Gibt es nun noch die Möglichkeit, sich gleiche Ergebnisse raus
zu filtern?
Wenn ich z.B. die Maße 30x20 habe, dann kommt da ja 1,50 raus.
Nun wüsste ich gern, wie gross ich eine Seite haben muss,
damit da wieder 1,50 raus kommt?!
Also z.B. 36/24. Das kann ich ja nun nachschauen, aber bei so
vielen Zahlen, wäre es einfacher wenn man sich das anzeigen
lassen kann…
Ist das machbar?
Es soll mir das ausrechnen von individuellen Bildgrössen
vereinfachen!

Hi Chilli1,

wie genau soll es denn sein?

Soll z.B. der Wert 0,733333333 gleich mit 0,720673653 sein, also beides als 0,73 gewertet werden oder nicht?

Wie und wo sollen die Ergebnisse angezeigt werden?

Nimm mal eine neue leere Mappe. Klicke in Tabelle1 unten mit rechts auf den Blattnamen, dann wähle „Code anzeigen“ aus.
In das Fenster kopierst du dann den Code rein der hier unter „in Tabelle1“ steht.
Dann im VB-Editor Einfügen—Modul, dadurch wird Modul1 erstellt und das fenster von Modul1 geht auf, dort kopierst du den Code für Modul1 rein.
Dann stellst du den Curser beliebig mitten in den Code und drückst F5.

Den Editor oben rechts mit dem Schließkreuz schließen.

dann wähle im Blatt einen Faktor aus, genau gleichgroße Faktoren werden gefärbt, in A1 steht jeweils die Anzahl gleicher Faktoren.

Wäre das was als Anzeige?

Gruß
Reinhard

in Tabelle1

Private Sub Worksheet\_SelectionChange(ByVal Target As Range)
Dim Zelle As Range, Anz As Long
On Error GoTo Ende
Application.ScreenUpdating = False
Application.EnableEvents = False
Range("A1").Value = ""
Columns(1).AutoFit
Application.EnableEvents = True
ActiveSheet.Cells.Interior.ColorIndex = xlNone
If Target.Cells.Count 1 Then GoTo Ende
If Intersect(Target, Range("B2:CN92")) Is Nothing Then GoTo Ende
For Each Zelle In Range("B2:CN92")
 If Zelle.Value = Target.Value Then
 Anz = Anz + 1
 Zelle.Interior.ColorIndex = 6
 End If
Next Zelle
Application.EnableEvents = False
Range("A1").Value = Anz
Columns(1).AutoFit
Ende:
Application.EnableEvents = True
Application.ScreenUpdating = True
End Sub

in Modul1

Sub TabelleErstellen()
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveSheet.UsedRange.ClearContents
ActiveSheet.Cells.Interior.ColorIndex = xlNone
Range("A2,B1") = 10
Range("B1").DataSeries Rowcol:=xlRows, Type:=xlLinear, Date:=xlDay, Step \_
 :=1, Stop:=100, Trend:=False
Range("A2").DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, \_
 Step:=1, Stop:=100, Trend:=False
Range("B2:CN92").FormulaR1C1 = "=R1C/RC1"
Range("B2:CN92").Value = Range("B2:CN92").Value
Range("B2:CN92").Columns.AutoFit
Range("B2").Select
ActiveWindow.FreezePanes = True
Range("A1").Font.Bold = True
Range("A1").Select
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub

Hi,

vielen Dank! Das sieht schon super aus.
Da wäre ich ja erst nach nem Studium hinter gestiegen :wink:
Kann man das ganze nicht auf 2 Nachkommastellen begrenzen?
So das Excel automatisch aufrundet?
Falls nicht, vielen Dank für die schnelle Hilfe!

LG

Kann man das ganze nicht auf 2 Nachkommastellen begrenzen?
So das Excel automatisch aufrundet?

Hi Chili1,

Alt+F11, doppelklicke auf Modul1, tausche den Code aus, wieder Curser in den Code stellen und F5, Editor schließen.

Vorsicht, der Code macht das was er soll mit dem gerade aktiven Blatt, nicht daß da gerade das Blatt einer anderen Mappe aktiv ist!

Option Explicit
'
Sub TabelleErstellen()
Application.EnableEvents = False
Application.ScreenUpdating = False
ActiveSheet.UsedRange.ClearContents
ActiveSheet.Cells.Interior.ColorIndex = xlNone
Range("A2,B1") = 10
Range("B1").DataSeries Rowcol:=xlRows, Type:=xlLinear, Date:=xlDay, Step \_
 :=1, Stop:=100, Trend:=False
Range("A2").DataSeries Rowcol:=xlColumns, Type:=xlLinear, Date:=xlDay, \_
 Step:=1, Stop:=100, Trend:=False
Range("B2:CN92").FormulaR1C1 = "=round(R1C/RC1,2)"
Range("B2:CN92").Value = Range("B2:CN92").Value
Range("B2:CN92").NumberFormat = "0.00"
Range("A2:CN92").Columns.AutoFit
Range("B1:CN1").HorizontalAlignment = xlCenter
Range("A2:A92").HorizontalAlignment = xlCenter
Range("B2").Select
ActiveWindow.FreezePanes = True
Range("A1").Font.Bold = True
Range("A1").Select
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub

Gruß
Reinhard

1 „Gefällt mir“

SUPER!!!
Genau so wollte ich das haben!

Vielen, vielen Dank!!!