Herbers Excel-Forum - das Archiv

Verwendung von Variablen in Formeln

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Bild

Betrifft: Verwendung von Variablen in Formeln
von: Valeria

Geschrieben am: 21.12.2006 15:04:59
Hallo in die Forum's-Runde!
Habe ein Problem, bei dem mir bisher noch niemand helfen konnte.
Wie kann ich in einem Makro innerhalb einer Formel / Zellbezug, den Benutzer über eine Inputbox den Geltungsbereich bestimmen lassen. Also also Beispiel, eine Formel steht in einer Zelle und soll, je nachdem wie es der Benutzer will, bis zu X Zellen kopiert werden.
Als Anhaltspunkt die beiliegende Formel! Hier soll das "n" in der dritten Zeile nach Cells (.... variabel gehalten werden.
Danke und ein schönes Weihnachtsfest!
Private Sub CommandButton1_Click()
Dim n As Range
Sheets("Tabelle1").Activate
Set n = Application.InputBox("Wählen Sie den Bereich bis wohin die Formel kopiert werden soll", Type:=8)
Range(n.Address).Select
Range(Cells(3, 1), Cells(n, 1)).Select
Application.CutCopyMode = False
Selection.ClearContents
Range("A2").Select
Selection.Copy
Range(Cells(2, 1), Cells(n, 1)).Select
Selection.PasteSpecial Paste:=xlFormulas, Operation:=xlNone, SkipBlanks:= _
False, Transpose:=False
MsgBox "Formel ist kopiert!"
End Sub

Bild

Betrifft: AW: Verwendung von Variablen in Formeln
von: Erich G.

Geschrieben am: 21.12.2006 16:50:32
Hallo Valeria,
meinst du das ungefähr so?
Private Sub CommandButton1_Click()
Dim n As Range
On Error Resume Next
Set n = Application.InputBox( _
"Wählen Sie den Bereich, in den die Formel kopiert werden soll:", Type:=8)
If Err = 0 Then
Range("A2").Copy
n.PasteSpecial Paste:=xlFormulas, _
Operation:=xlNone, SkipBlanks:=False, Transpose:=False
Application.CutCopyMode = False
End If
On Error GoTo 0
' n(1).Select          ' selektiert die erste Zelle des ausgewählten Bereichs
End Sub
Rückmeldung wäre nett! - Erich aus Kamp-Lintfort wünscht euch schöne Feiertage!
Bild

Betrifft: AW: Verwendung von Variablen in Formeln
von: Valeria
Geschrieben am: 27.12.2006 16:49:02
Herzlichen Dank, klappt sehr gut. Daniel hat auch noch eine Lösung dazu geschrieben, die auch gut klappt und sehr elegant ist - nur falls Interesse besteht!
Alles Gute für 2007!
Bild

Betrifft: AW: Verwendung von Variablen in Formeln
von: Daniel Eisert

Geschrieben am: 21.12.2006 16:59:25
Hallo
dein Problem ist, daß du n einmal als Range-Objekt-Variabel dimensionierst und dann aber als Ganzzahl verwendest.
das geht natürlich nicht, hier müssten dann 2 verschiedene Variablen verwendet werden.
Was soll das Makro überhaupt machen?
Wenn ichs richtig verstehe, soll der User einen Bereich markieren, der dann mit der Formel aus A2 gefüllt wird.
Das geht weniger aufwendig mit
dim n as range
Set n = Application.InputBox("Wählen Sie den Bereich bis wohin die Formel kopiert werden soll", Type:=8)
n.formula = Range("A2").formula
Gruß, Daniel
Bild

Betrifft: AW: Verwendung von Variablen in Formeln
von: Valeria
Geschrieben am: 27.12.2006 16:47:19
Herzlichen Dank, klappt gut und ist eine elegante Lösung...
Alles Gute für 2007!
 Bild
Excel-Beispiele zum Thema "Verwendung von Variablen in Formeln"
Zugriff auf Zellen unter Verwendung eines Bereichsnamens SVERWEIS unter Verwendung mehrer Kriterien
Variablenübergabe in andere Arbeitsmappen Einlesen von Zellinhalten in Variablen
Variablen in einer temporären Textdatei zwischenspeichern Zellinhalte in Verbindung mit Variablen in Textdatei schreiben
Zinstabelle mit variablen Rückzahlungen Auflistung der Kalenderwochen eines variablen Jahres
Kapitalverzinsung mit fixen Raten und variablen Zinsen Darlehensverzinszung bei variablen Rückzahlungsraten