Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

per VBA InputBox in Zelle schreiben und drucken

per VBA InputBox in Zelle schreiben und drucken
03.05.2016 11:02:25
Dominic
Hallo zusammen,
ich benötige ein Skript bei dem ich einen Wert eingeben kann (1 bis 52) z. B. per InputBox. Dieser Wert wird in meine Tabelle in die Zelle C6 bis C12 übergeben.
Wie bekomme ich das hin? Mein folgendes Skript funktioniert nicht. Hier kommt immer der Fehler "Objekt erforderlich" und markiert mir die Zeile Anzahl = Value.Range("C6:C12")
Vielen Dank!
Sub StrichlisteDrucken()
ActiveSheet.Unprotect
'Spalten Ausblenden
' Zeilen vergrößern
Rows("6:12").RowHeight = 45
Columns("E:V").ColumnWidth = 12
Columns("X:X").ColumnWidth = 12
Columns("Z:Z").ColumnWidth = 12
Columns("AB:AC").ColumnWidth = 12
'   Call InfosFuerZaehllistenEinfuegen568910
Dim Anzahl As Integer
Anzahl = InputBox(Chr(13) & Chr(13) & "Für welche Kalenderwoche soll die Liste ausgedruckt  _
werden" & Chr(13) & "", "Bitte geben Sie die Kalenderwoche ein.")
If Anzahl  53 Then
MsgBox "Bitte eine Kalenderwoche auswählen. Der eingegebene Wert ist nicht erlaubt."
Exit Sub
Else
Anzahl = Value.Range("C12")
With ActiveSheet.PageSetup
.Zoom = False
.PrintArea = "$A$2:$AD$13"
.Orientation = xlPortrait
.Zoom = 70
End With
Application.Dialogs(xlDialogPrint).Show
ActiveSheet.PageSetup.PrintArea = False
End If
Rows("6:12").RowHeight = 15
Columns("E:V").ColumnWidth = 5
Columns("X:X").ColumnWidth = 6
Columns("Z:Z").ColumnWidth = 6
Columns("AB:AC").ColumnWidth = 9
ActiveSheet.Protect
End Sub

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: per VBA InputBox in Zelle schreiben und drucken
03.05.2016 11:20:55
Michael
Hallo!
Hier kommt immer der Fehler "Objekt erforderlich" und markiert mir die Zeile Anzahl = Value.Range("C6:C12")
Value.Range(...) gibt es nicht.
Wenn Du den Wert aus der Input-Box in Zelle C12 schreiben willst, so:
Range("C12").Value = Anzahl
Achtung: In Deiner Schreibweise, abgesehen vom o.a. Umstand, würdest Du nichts in eine Zelle schreiben, sondern Dir nur den Wert der Input-Box mit einem Zell-Wert überschreiben:
Anzahl = Range("C12").Value
LG
Michael

AW: per VBA InputBox in Zelle schreiben und drucken
03.05.2016 11:22:36
ChrisL
Hi Dominic
Eigentlich nur Anzahl, Range und Value vertauscht. Allerdings würde der Code verschiedene Fehler produzieren z.B. bei Abbruch, Feld leer usw. Darum hier ein Vorschlag (ohne Beigemüse).
Sub StrichlisteDrucken()
Dim Anzahl As Variant
Anzahl = Application.InputBox(Chr(13) & Chr(13) & _
"Für welche Kalenderwoche soll die Liste ausgedruckt werden" _
& Chr(13) & "", "Bitte geben Sie die Kalenderwoche ein.")
If Anzahl = False Then Exit Sub
If Not IsNumeric(Anzahl) Then
MsgBox "Muss eine Zahl sein"
Exit Sub
End If
If WorksheetFunction.Round(Anzahl, 0)  Anzahl Then
MsgBox "Muss eine Ganzzahl sein"
Exit Sub
End If
If Anzahl  53 Then
MsgBox "Bitte eine Kalenderwoche auswählen. Der eingegebene Wert ist nicht erlaubt."
Exit Sub
End If
Range("C6:C12").Value = Anzahl
End Sub

cu
Chris

Anzeige
AW: per VBA InputBox in Zelle schreiben und drucken
03.05.2016 12:02:23
Dominic
Perfekt, hab es noch an meine Wünsche weitergehend angepasst (mit Beigemüse) und es läuft.
Danke! :)

400 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige