Herbers Excel-Forum - das Archiv
Wert anwählen
Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Betrifft: Wert anwählen
von: Mike
Geschrieben am: 26.10.2003 21:42:45
Hallo,
ich habe eine LSt-Tabelle im Excel-Format, die auszugsweise so aufgebaut ist:
Tabelle1 |
| A | B | C | D | E | F | G | H | I | 3 | | Besondere Monats-Lohnsteuertabelle 2002 und 2003 |
---|
4 | | | von 1500 EURO bis 1568.99 EURO , Kirchensteuer 9% | | |
---|
5 | | | | | | | | | | 6 | | Kinderfreibetrag | | - 0 - | | - 2 - | | | | 7 | ab EURO | StKl | Steuer | SolZu | KiStr | SolZu | KiStr | | | 8 | 1.500,00 | IV | 172,66 | 9,49 | 15,54 | 0,00 | 4,58 | | | 9 | | | | | | | | | | 10 | 1.503,00 | IV | 173,50 | 9,54 | 15,61 | 0,00 | 4,65 | | | 11 | | | | | | | | | | 12 | 1.506,00 | IV | 174,33 | 9,58 | 15,69 | 0,00 | 4,71 | | | 13 | | | | | | | | | | 14 | 1.509,00 | IV | 175,08 | 9,62 | 15,75 | 0,00 | 4,77 | | | 15 | | | | | | | | | | 16 | 1.512,00 | IV | 175,91 | 9,67 | 15,83 | 0,00 | 4,83 | | | 17 | | | | | | | | | | 18 | 1.515,00 | IV | 176,75 | 9,72 | 15,90 | 0,00 | 4,89 | | |
|
Excel Tabellen einfach im Web darstellen Excel Jeanie HTML 2.0 Download
Wie kann man nun erreichen, dass bei Eingabe eines Wertes von z.B. 1510,30 in einer msg-Box, die beim Öffnen der Tabelle automatisch startet, der Wert 1509,00 (also der nächst kleinere) in Spalte A der Tabelle angesprungen wird?
Wie lautet das Makro für die msg-Box?
Gruß
Mike
Betrifft: AW: Wert anwählen
von: tobias
Geschrieben am: 26.10.2003 22:36:34
meinst du mit der msgbox nicht eher eine inputbox (wo man etwas eingeben kann)??
msgboxes zeigen nur text an.
tobias
Betrifft: AW: Wert anwählen
von: Mike
Geschrieben am: 26.10.2003 22:52:54
Hast natürlich Recht. Sorry.
Betrifft: AW: Wert anwählen
von: tobias
Geschrieben am: 26.10.2003 23:17:17
x = InputBox("Euro", "LSt")
For i = Cells(65536, 1).End(xlUp).Row To 1 Step -1
If x >= Cells(i, 1) And Cells(i, 1) <> "" Then
Cells(i, 1).Select
Exit Sub
End If
Next
soo, das wurde mit gerade ins ohr geflüstert...
gruß tobias
Betrifft: AW: Wert anwählen
von: Mike
Geschrieben am: 26.10.2003 23:46:24
Hallo Tobias,
bin in VBA nicht so fit. Ist das Makro so komplett? Wo muss ich es reinschreiben, damit es automatisch startet?
Gruß Mike
Betrifft: AW: Wert anwählen
von: tobias
Geschrieben am: 27.10.2003 12:53:26
excel starten -> alt + F11
"diese arbeitsmappe" doppelklicken
code einfügen:
Private Sub Workbook_Open()
Dim x As Integer
x = InputBox("Euro", "LSt")
For i = Cells(65536, 1).End(xlUp).Row To 1 Step -1
If x >= Cells(i, 1) And Cells(i, 1) <> "" Then
Cells(i, 1).Select
Exit Sub
End If
Next
End Sub
gruß
tobias
Betrifft: AW: Wert anwählen
von: Mike
Geschrieben am: 27.10.2003 18:25:08
Hi Tobias,
danke, klappt auch im Prinzip. Nur wenn ich die Input-Box über "Abbrechen" oder über "X" schließen will, kommt die Meldung => Laufzeitfehler 13. Typen unverträglich.
Ist aber wahrscheinlich nur ein Schönheitsfehler. Ich will ja einen Wert eingeben.
Wie müsste man das Makro verändern, damit nicht nur der Wert in der Zelle der Spalte A angesprungen wird, sondern auch gelb markiert wird. Kann die gelbe Markierung in der Zeile bis Spalte E erweitert werden? Also wenn z.B. die Zelle A256 angesprungen wird, soll die Zeile A256 bis E256 gelb markiert werden.
Gruß
Mike
Betrifft: AW: Wert anwählen
von: tobias
Geschrieben am: 27.10.2003 21:28:07
hallo mike
einfach den alten code durch den neuen ersetzen:
Private Sub Workbook_Open()
Dim txt
Dim x As Currency
Columns("A:E").Interior.ColorIndex = xlNone
txt = InputBox("Euro", "LSt")
If IsNumeric(txt) = False Then
MsgBox "Ungültige Eingabe", vbCritical, "Fehler"
Exit Sub
Else
x = txt
End If
For i = Cells(65536, 1).End(xlUp).Row To 1 Step -1
If x >= Cells(i, 1) And Cells(i, 1) <> "" Then
Range(Cells(i, 1), Cells(i, 5)).Interior.Color = RGB(255, 255, 0)
Exit Sub
End If
Next
End Sub
gruß
tobias
Betrifft: Danke Dir. funktioniert jetzt bestens.
von: Mike
Geschrieben am: 27.10.2003 22:05:33
Gruß
Mike