Microsoft Excel

Herbers Excel/VBA-Archiv

Zelle hochzählen und erhaltenen Wert kopieren

Betrifft: Zelle hochzählen und erhaltenen Wert kopieren von: Kay
Geschrieben am: 18.07.2008 12:51:28

Hallo,

Ich habe in einem Sheet eine Berechnung vorgenommen, die sich aus mehreren Komponenten (bzw. aus Werten anderer Zellen) zusammensetzt.

In Zelle F3 möchte ich nun einen Wert von 9 hochzählen (in Schritten von 0,01) bis 16.

Nach jedem Hochzählen soll der durch die Änderung des Wertes in F3 hervorgerufene Inhalt in Zelle F23 kopiert und in Spalte B (also für 9,00 in B1, für 9,01 in B2, für 9,03 in B3 usw.) geschrieben werden.

Kann mir jemand hierzu eine Hilfestellung geben? Bin absoluter Einsteiger bzgl. Makros.

Vielen Dank vorab & Grüße
Kay

  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: Rudi Maintaire
Geschrieben am: 18.07.2008 13:00:39

Hallo,
dafür brauchst du kein VBA.
Präzisiere deine Frage!

Gruß
Rudi


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: Kay
Geschrieben am: 18.07.2008 13:22:00

Hallo, erstmal Danke, dass Du Dich meinem Problem annimmst!

In Zelle F3 kann manuell ein Wert eingetragen werden (9,00; 9,01; 9,02; ... 16,00). Aus diesem Wert ergibt sich in F23 ein Wert durch eine Berechnung.

In den Zellen A1 bis A701 stehen die in F3 eingetragenen Werte 9 bis 16.
Dahinter (also in B1 bis B701) sollen nun jeweils die zugehörigen Werte aus F23 eingefügt werden.

Ich könnte nun zwar alles manuell vornehmen (z. B. Wert "9,01" in F3 eintragen und Wert aus F23 "0,0413" manuell in B2 kopieren), aber das wäre umständlich und ich hätte das Ganze 700 Mal zu wiederholen.

Wenn ich ohne Makro auskomme, soll es mir sehr Recht sein!


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: David
Geschrieben am: 18.07.2008 13:27:49

Schreibe in Zelle B1 die Formel aus F23 mit Bezug auf A1 und kopiere diese dann runter bis B700.

Gruß

David


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: Kay
Geschrieben am: 18.07.2008 15:44:11

So einfach ist das leider nicht. Ich berechne über mehrere Schritte eine Aktienoption.
Es steht im Feld F3 der zugehörige Aktienkurs, im Feld F4 der zugehörige Strike usw.
Die Berechnungen und Teilergebnisse erfolgen dabei noch über unterschiedliche andere Zellen.

In Feld F21 steht dann der Preis einer speziellen Option ebenso wie in Zelle F22. F23 (ebenfalls eine spezielle Option) ergibt sich dann aus F22-F21.

D. h. der Aktienkurs (der ja von 9 bis 16 hoch läuft) hat Auswirkungen auf unterschiedliche Zellen, aber nur indirekt auf das Feld F23 von dem ich aber ja die Werte benötige.

Das heißt im Klartext:
Der Aktienkurs muss hochgezählt werden von 9 bis 16.
Nach jedem mal hochzählen muss der Wert aus F23 irgendwo hin kopiert werden.


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: David
Geschrieben am: 18.07.2008 15:54:26

ähhh, da komme ich nicht ganz mit. Vielleicht solltest du einfach mal eine Mappe hochladen, die das Problem verdeutlicht?!

Gruß

David


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: Kay
Geschrieben am: 18.07.2008 17:04:28

Die entsprechende Datei findest Du unter https://www.herber.de/bbs/user/53955.xls


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: mpb
Geschrieben am: 18.07.2008 17:24:37

Hallo Kay,

wenn der Wert in F3 manuell eingetragen wird, kopiere folgenden Code in das Klassenmodul der Tabelle:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$F$3" Then
    Cells(Application.WorksheetFunction.Match(Range("f3"), Range("a1:a701"), 0), 2) = Cells(23,  _
6)
End If
End Sub



Ansonsten sollte alternativ auch

Private Sub Worksheet_Calculate()
Cells(Application.WorksheetFunction.Match(Range("f3"), Range("a1:a701"), 0), 2) = Cells(23, 6)
End Sub



funktionieren, ebenfalls in das Klassenmodul der Tabelle zu kopieren.

Gruß
Martin


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: Kay
Geschrieben am: 18.07.2008 17:48:00

Hallo Martin,

Vielen Dank für Deine Antwort!
Das ist ja der "springende Punkt" an der Sache! Ich möchte die Werte nicht manuell eintragen sondern in F3 soll automatisch von z. B. 9 bis 16 hochgezählt werden. Nach jedem Schritt soll der Wert aus F23 herauskopiert und zum entsprechend in Spalte B eingefügt werden.

Nochmal der genaue Ablauf:
1.) Automatischer Eintrag von 9,00 in F3
2.) Es ergibt sich Wert von 0,000 in F23. Dieser soll in Zelle B1 kopiert werden
3.) Automatischer Eintrag von 9,01 in F3
4.) Es ergibt sich Wert von 0,0413 in F23. Dieser soll in Zelle B2 kopiert werden
1.) Automatischer Eintrag von 9,02 in F3
2.) Es ergibt sich Wert von 0,0821 in F23. Dieser soll in Zelle B3 kopiert werden

usw.


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: mpb
Geschrieben am: 18.07.2008 17:58:19

Hallo Kay,

noch ein Versuch:

Diesen Code in ein normales Modul kopieren und starten:

Sub Eintragen()
Application.ScreenUpdating = False
For i = 900 To 1600
    Range("F3") = i / 100
    Cells(i - 899, 2) = Range("F23").Value
Next i
Application.ScreenUpdating = True
End Sub



Gruß
Martin


  

Betrifft: AW: Zelle hochzählen und erhaltenen Wert kopieren von: Kay
Geschrieben am: 18.07.2008 18:38:42

Hallo Martin,

Vielen vielen Dank! Genau so sollte es laufen... Jetzt kann ich weiter arbeiten und hoffen, dass ich so was künftig auch irgendwann alleine schaffe. :-) Ich kann Dein Makro zwar nachvollziehen, jedoch wäre ich trotzdem nicht drauf gekommen.

Schönes Wochenende!


 

Beiträge aus den Excel-Beispielen zum Thema "Zelle hochzählen und erhaltenen Wert kopieren"