Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
388to392
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
388to392
388to392
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

If Then Else

If Then Else
02.03.2004 18:35:16
TinoB
hallo leute,
ich versuche mich jetzt weiter in excel bzw. VBA einzuarbeiten. nun habe ich eine frage. in der SpalteG ab der Zeile20 in der Tabelle1 befinden sich bzw. werden ua. die zahlen 10, 11, 20, 21 usw. eingetragen. wie muß den die anweisung aussehen, das wenn zb in 10 eingetragen wird ein makro bzw eine berechnung ausgeführt wird und das ergebnis in der gleichen zeile nur in der SpalteY eingetragen wird. oder halt die 20 mit einer anderen berechnung usw. könnte mir da jemand eventuell ein beispiel bringen wie dies aufgebaut wird.
Danke
Tino

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: If Then Else
02.03.2004 18:57:02
ChrisL
Hi Tino
Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 7 And Target.Row >= 20 Then
Select Case Target
Case 20: Cells(Target.Row, 25) = 10 * 10
Case 21: Cells(Target.Row, 25) = 20 * 20
End Select
End If
End Sub


Alt + F11, doppelklick auf tabelle, code einfuegen.
Gruss
Chris
Select Case Beispiel
02.03.2004 19:07:26
ChrisL
... habe noch den Titel angepasst :-)
Aber wollte noch sagen, Michael hat recht, deine Frage lässt viel Spielraum offen. Wenn du die Werte 10, 11, 20, 21 mittels Gültigkeit/Liste erzeugst könntest du mit meinem Beispiel Probleme bekommen. Und für Michaels Beispiel musst du den Bereich erst als Namen definieren, sonst wird es nichts.
Gruss
Chris
Anzeige
AW: Select Case Beispiel
02.03.2004 19:26:09
TinoB
>deine Frage lässt viel Spielraum offen
ja ist richtig, nur möchte ich nicht, das sich forum user über mein problem gedanken machen und mir dann die fertige lösung präsentieren. ich möchte mich langsam an die sache rantasten, damit ich am ende auch weiß was ich gemacht habe. ;-)
AW: If Then Else
02.03.2004 19:10:30
TinoB
danke, ok das versteh ich. funktioniert dies auch, wenn ich nicht die werte in der formel sondern einen bezug auf eine Zelle in der entsprechenden Zeile mache? ist zwar bestimmt falsch aber in etwa so:
If Target.Column = 7 And Target.Row >= 20 Then
Select Case Target

Case 20: Cells(Target.Row, 25) = A20 * B20 / C20
Case 21: Cells(Target.Row, 25) = A20 * C20 / L20

End Select
End If
End Sub
nur müsste der bezug ebenfalls dynamisch auf die entsprechende zeile sein.
Tino
Anzeige
AW: If Then Else
02.03.2004 19:14:54
ChrisL
Hi Tino
Cells(Target.Row, 1) = Spalte A
Cells(Target.Row, 7) = Spalte G
Cells(Target.Row, 25) = Spalte Y
etc.
Gruss
Chris
AW: If Then Else
02.03.2004 19:34:24
TinoB
Cells(Target.Row, 1) = Spalte A
Cells(Target.Row, 7) = Spalte G
Cells(Target.Row, 25) = Spalte Y
ja ok, dies ist mit klar. ich versuch mein problem nochmal anders zu schildern.
Wenn in SpalteG (irgendwo) 10
Dann SpalteJ = SpalteH * PI() * SpalteI (gleiche zeile)
Wenn in SpalteG (irgendwo) 11
Dann SpalteJ = SpalteH * SpalteI /100 (gleiche zeile)
Sonst SpalteJ = leer
hoffe es einigermaßen richtig erklärt zu haben.
Tino
Anzeige
AW: If Then Else
02.03.2004 20:17:05
ChrisL
Hi Tino
Finds schon OK, wenn du selber auf die Lösung kommen willst, aber sie steht eigentlich schon da. Die Frage ist nur, der wievielte Buchstaben vom Alphabet I, J und H sind.
Cells(Target.Row, Spalte) = Cells(Target.Row, Spalte) * Cells(Target.Row, Spalte) / 100
Gruss
Chris
danke, dies könnte die lösung sein,
02.03.2004 20:44:30
TinoB
mal sehen ob's klappt.
Tino
AW: If Then Else
02.03.2004 18:58:10
Michael
Das ist nicht so einfach und je nachdem, wann das Makro gestartet werden soll (automatisch oder von Hand) sehr unterschiedlich.
Allgemein könnte sowas so aussehen:

Sub Makro()
Dim Bereich As Name ' Das ist der Bereich, in dem geschaut werden soll
Dim Zelle As Range  ' Die einzelne Zelle
For Each Zelle In Bereich
If Zelle.Value = 10 then
zelle.offset(0, 1)=zelle.value * 5  ' hier würde Zelle rechts daneben ausgewählt
Elseif Zelle.Value = 20 then
zelle.offset(0, 1)=zelle.value * 20
Else
End If
Next
End Sub

Anzeige
AW: If Then Else
02.03.2004 19:20:04
TinoB
danke erstmal, das makro soll eigentlich bei veränderung der entsprechenden zelle, oder aber mittels button ausgeführt werden.
Tino

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige