Herbers Excel-Forum - das Archiv

Wert aus Input übernehmen

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

Betrifft: Wert aus Input übernehmen
von: Matthias

Geschrieben am: 14.02.2005 14:58:04
Hallo,
Folgendes Problem: Habe ein Arbeitsblatt mit einer Spalte D, die verschiedene Umsatzwerte enthält. Die Werte beginnen bei D5 bis D44. Nicht alle Zellen haben einen Wert. Diese Zellen sind also leer. Ich möchte nun alle leeren Zellen nach-einander, mit Hilfe einer InputBox und einen Umsatz-Zahl füllen. (Wert aus der Inputbox soll in die leere Zelle übernommen werden) Und wenn die letzte leere Zelle einen Wert hat soll die Aktion beendet sein.
Ist so etwas machbar?
Gruß
Matthias

Hier mein Versuch!
Sub LeereZelle()
Dim Bereich As Range
Dim Zelle As Range
Dim n As Integer
Set Bereich = Range("D5:D44")
For Each Zelle In Bereich
If Zelle.Value = "" Then InputBox "Umsatz eingeben:" _
& Zelle.Address: Zelle.Select
Next Zelle
End Sub

Bild

Betrifft: AW: Wert aus Input übernehmen
von: harry
Geschrieben am: 14.02.2005 15:08:50
hi,
so gehts:
For Each Zelle In Bereich
If Zelle.Value = "" Then
Zelle.Value = Application.InputBox("Wert eingeben")
End If
Next Zelle
liebe grüße,
harry
Bild

Betrifft: AW: Wert aus Input übernehmen
von: WernerB.

Geschrieben am: 14.02.2005 15:17:45
Hallo Matthias,
wie gefällt Dir das?
Sub LeereZelle()
Dim c As Range
Dim n As String
For Each c In Range("D5:D44")
If c.Text = "" Then
c.Select
n = InputBox("Umsatz eingeben:", "Fehlende Umsatzangabe")
c.Value = CDbl(n)
End If
Next c
End Sub

Viel Erfolg wünscht
WernerB.
P.S.: Dieses Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter !
Bild

Betrifft: AW: Wert aus Input übernehmen
von: Matthias
Geschrieben am: 14.02.2005 15:59:57
Danke für die suuuper schnelle Lösung !!!
Habe noch eine Frage, wenn ich jetzt auf abbrechen drücke, kommt eine Fehlermedung
mit Laufzeitfehler, kann man das abfangen und aus der Schleife rausgehen bzw alles beenden.
Danke im voraus.
MfG Matthias
Bild

Betrifft: AW: Wert aus Input übernehmen
von: harry

Geschrieben am: 14.02.2005 16:27:09
Dim Zelle As Range
Set Bereich = Range("D5:D44")
For Each Zelle In Bereich
If Zelle.Value = "" Then
Zelle.Value = Application.InputBox("Wert eingeben")
If Zelle.Value = False Then
Zelle.Clear
End If
End If
Next Zelle
Bild

Betrifft: AW: Wert aus Input übernehmen
von: WernerB.

Geschrieben am: 15.02.2005 07:13:13
Hallo Matthias,
bitte sehr:
Sub LeereZelle()
Dim c As Range
Dim n As String
For Each c In Range("D5:D44")
If c.Text = "" Then
c.Select
n = InputBox("Umsatz eingeben:", "Fehlende Umsatzangabe")
If n = "" Then
MsgBox "Keine Eingabe oder Abbruch !" & vbCr & vbCr & _
"Makro-Abbruch !", vbOKOnly + vbCritical, _
"Dezenter Hinweis für " & Application.UserName & ":"
Exit Sub
End If
c.Value = CDbl(n)
End If
Next c
End Sub

Gruß
WernerB.
 Bild