Finns det någon möjlighet att kontrollera vilken knapp man har tryckt på i en InputBox svar = inputbox("tryck....", vbyesno + vbcritical) det fungerar ej, när du trycker på OK får du svar = det du skrev i InputBoxen, ej vbyes eller vbno. Om du ej skrev något och tryckte på OK så får du svaret svar ="" . Mitt förslag: Det finns en viss skillnad, även om den inte är dokumenterad. Om man trycker OK när textrutan är tom returneras en tom sträng. Trycker man däremot Cancel returneras en NULL sträng (vbNullString). Därför kan du kolla med StrPtr om man tryckte Cancel eller ej.InputBox
?
JohanSv: InputBox
if svar = vbyes then
---
elseif svar = vbno then
---
else
---
end if
var det så du menade?
/PelleSv: InputBox
här är mitt exempel
dim artist as string
artist = "Metallica" ' lagrar en variabel för att få ett förval InputBoxen.
artist = InputBox("Skriv namnet på Spellistan", "Skapa spellista", artist) ' när du fått upp InputBoxen ska jag godkänna den förvalda
' texten, i detta fall Metallica. Om texten ej är godkänd går den
' att redigera och trycka OK eller så ska det gå att trycka på
' Cancel och avbryta hela proceduren.
Vet ej om vbYesNo fungerar med InputBox. På msgbox fungerar det
VbYesNo men då finns det ej några Input alternativ
JohanSv: InputBox
Gör en egen Inputbox! Den blir snyggare, kan customiseras och framför allt kan du fånga upp att användaren har tryckt Avbryt (eller någon annan knapp du väljer att ha med).
Ett formulär och några publika variabler är allt som behövs!
-CSv: InputBox
<code>
s = InputBox(...)
If StrPtr(s) = 0 Then
' Tryckte cancel
Else
' Tryckte OK
End If
</code>
MS