Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

VBA-Excel... Wert aus Inputbox in Zelle Schreiben...

Frage Entwicklung VB for Applications

Mitglied: cewiethemaster

cewiethemaster (Level 2) - Jetzt verbinden

20.05.2010, aktualisiert 18.10.2012, 33274 Aufrufe, 4 Kommentare

Wie kann ich den Wert aus einer Inputbox in die Zelle G1 schreiben lassen?

hallöle...

Google hat hierzu nichts gefunden...

Wie kann ich den Wert aus einer Inputbox mittels Makro in die Zelle G1 schreiben?
Und wie kann ich die InputBox so formatieren, dass sie nur Zahlen annimt, und bei eingabe eines Buchstaben oder Sondezeichen eine Warnung kommt?

Der Derzeitige Code:
01.
Dim inpt As Integer 
02.
 
03.
inpt = InputBox("Geben Sie bitte die Zahl ein.")
LG

Cewie
Mitglied: TheEternalPhenom
20.05.2010 um 13:54 Uhr
Sers Cewie

eine Möglichkeit wäre:

Range("Zelle").Select

ActiveCell = Variable


es gibt noch verschiedene andere jedoch habe ich im mom nicht die Muse diese noch heraus zu finden

Gruß

duffman521
Bitte warten ..
Mitglied: TsukiSan
20.05.2010 um 15:54 Uhr
nur ein Beispiel:
01.
If IsNumeric(Range("G1").Select) Then MsgBox "OK"
Mit "IsNumeric" kannst du auf Zahlen abfragen (aber auch auch Dezimalzeichen etc.!)

Gruss
Tsuki
Bitte warten ..
Mitglied: bastla
22.05.2010, aktualisiert 18.10.2012
Hallo @All!

Das Thema "nur Zahlen als Eingabe zulassen" hatten wir neulich hier ein wenig durchgekaut ...

@cewiethemaster: Bei einer "InputBox()" kannst Du das gewünschte Ergebnis(-Format) nicht vorgeben, sondern nur den String, den sie geliefert hast, im Nachhinein prüfen. Soferne (als einfachster Fall) die Eingabe nur aus Ziffern bestehen darf, wäre etwa folgende Vorgangsweise möglich:
01.
Sub Eingabe() 
02.
Dim inpt As String, OK As Boolean, i As Integer 
03.
Do 
04.
    inpt = InputBox("Geben Sie bitte die Zahl ein.") 
05.
    OK = True 
06.
    For i = 1 To Len(inpt) 
07.
        If Mid(inpt, i, 1) < "0" Or Mid(inpt, i, 1) > "9" Then 
08.
            OK = False 
09.
            Exit For 
10.
        End If 
11.
    Next 
12.
Loop Until OK Or inpt = "" 'leere Eingabe bzw "Abbrechen" als Abbruchbedingung akzeptieren 
13.
If inpt = "" Then 
14.
    MsgBox "Na gut, dann nicht!" 
15.
    Exit Sub 
16.
End If 
17.
Range("G1").Value = inpt 
18.
End Sub
Wenn eine derartige Überprüfung mehrfach benötigt wird, bietet es sich an, sie in eine "Function" auszulagern, was dann etwa so aussähe:
01.
Sub Eingabe() 
02.
Dim inpt As String 
03.
Do 
04.
    inpt = InputBox("Geben Sie bitte die Zahl ein.") 
05.
Loop Until IstZahl(inpt) Or inpt = "" 'leere Eingabe bzw "Abbrechen" als Abbruchbedingung akzeptieren 
06.
If inpt = "" Then 
07.
    MsgBox "Na gut, dann nicht!" 
08.
    Exit Sub 
09.
End If 
10.
Range("G1").Value = inpt 
11.
End Sub 
12.
 
13.
Function IstZahl(Zahl As String) As Boolean 
14.
Dim i As Integer, Ziffer As String 
15.
IstZahl = True 
16.
For i = 1 To Len(Zahl) 
17.
    Ziffer = Mid(Zahl, i, 1) 
18.
    If Ziffer < "0" Or Ziffer > "9" Then 
19.
        If i > 1 Or Ziffer <> "-" Or Zahl = "-" Then 
20.
            IstZahl = False 
21.
            Exit For 
22.
        End If 
23.
    End If 
24.
Next 
25.
End Function
Um auch negative Zahlen zu akzeptieren, könnte die Prüfroutine so aussehen:
01.
Function IstZahl(Zahl As String) As Boolean 
02.
Dim i As Integer, Ziffer As String 
03.
IstZahl = True 
04.
For i = 1 To Len(Zahl) 
05.
    Ziffer = Mid(Zahl, i, 1) 
06.
    If Ziffer < "0" Or Ziffer > "9" Then 
07.
        If i > 1 Or Ziffer <> "-" Or Zahl = "-" Then 
08.
            IstZahl = False 
09.
            Exit For 
10.
        End If 
11.
    End If 
12.
Next 
13.
End Function
Grüße
bastla
Bitte warten ..
Mitglied: cewiethemaster
25.05.2010 um 07:51 Uhr
Ok. Danke für die Vielen Antworten... ich werd es testen, und mich wieder melden...

Edit: Hat geklappt.. Danke
Bitte warten ..
Ähnliche Inhalte
Microsoft Office
gelöst Excel: Wert aus mehreren Zeilen vergleichen (2)

Frage von Nicolaas zum Thema Microsoft Office ...

Microsoft Office
gelöst Excel: Wert aus mehreren Datein suchen und zugehörige Werte ausgeben (11)

Frage von RubyLissy zum Thema Microsoft Office ...

VB for Applications
VBA Excel Dateien zusammenfassen (3)

Frage von cberndt zum Thema VB for Applications ...

Neue Wissensbeiträge
Batch & Shell

Batch zum Zurücksetzen eines lokalen Profils

Tipp von Mr.Error zum Thema Batch & Shell ...

RedHat, CentOS, Fedora

Fedora, RedHat, Centos: DNS-Search Domain setzen

(13)

Tipp von Frank zum Thema RedHat, CentOS, Fedora ...

Heiß diskutierte Inhalte
LAN, WAN, Wireless
VPN Tunnel aufbauen (16)

Frage von Hajo2006 zum Thema LAN, WAN, Wireless ...

Router & Routing
ASUS RT-N18U mit VPN Client hinter Fritzbox - Portforwarding (14)

Frage von marshall75000 zum Thema Router & Routing ...

Microsoft Office
Saubere HTML aus Word-Dokument (13)

Frage von peterpa zum Thema Microsoft Office ...

E-Mail
gelöst Probleme beim E-Mail Empfang (12)

Frage von TommyB83 zum Thema E-Mail ...