28. november 2007 - 18:49Der er
5 kommentarer og 1 løsning
Inputbokse i Excel
Hvordan "tvinger" man en bruger til at udfylde inputboksene i Excel? Jeg har lavet et lille program der beregner den fremdiskonterede værdi af en given indbetaling, rente og løbetid. Jeg har brugt funktionen Loop Until [Variabel] <> "", men det gør så, at man heller ikke har mulighed for at trykke "cancel". Min kode ser således ud:
Option Explicit Public Sub Fremdiskontering() Dim Beløb Dim Rente Dim Løbetid
Do Beløb = InputBox("Indtast beløb", "Beløb") Debug.Print "Værdien i Beløb er: " & Beløb Loop Until Beløb <> ""
Do Rente = InputBox("Indtast renten", "Rente") Debug.Print "Værdien i Rente er: " & Rente Loop Until Rente <> ""
Do Løbetid = InputBox("Indtast løbetiden", "Løbetid") Debug.Print "Værdien i Løbetid er: " & Løbetid Loop Until Løbetid <> ""
Hvad med at lave en dialogboks i stedet? Så kan du for det første have alle 3 "inputbokse" (i form af tekstbokse) på én gang, så brugeren ikke får 3 inputbokse i træk, for det andet kan du tjekke, at de er udfyldt (og med værdier), når brugeren klikker ok.
Kunne du evt. give et eksempel? Min erfaring indenfor VBA begrænser sig desværre til inputbox, msgbox, variabler, løkker osv. Jeg har aldrig hørt om en dialogboks
Du kan - når du er i kodevinduet - indsætte en userform (= dialogboks). Her kan du placere forskellige kontroller, f.eks. labels og tekstbokse (lidt i stil med at indsætte kontrolelementer i et Excel-ark).
Tak for tilbuddet, men jeg har bogen Excel 2003 - Programmering med VBA, og der er der to kapitler omkring brugen af brugerformularer, så det vil jeg kigge på.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.