Hej allesammans. Hej Nop, Jag vill bara att subrutin 1 skall avslutas om sub 2 är någonting. Jag kan inte direkt se visten i det du vill uppnå med att koda på det viset. Alternativ 1: Jag förstår vad ni menat men jag vill göra följande kontroll på 10 textrutor och göra detta från 3 ställen. Kanske förstår ni nu.... Har jag förstått dig rätt om det du vill uppnå är följande: Det är helt riktigt. Dessutom vill jag göra uppdatering till databasen på 3 olika ställen beroende på ett annat villkor.Få programmet att stanna ??
Totalt novis som jag är behöver jag få reda på hur man får ett VB program att stanna ??
Så här.
Från en sub hoppar jag till en annan sub (Call .....) för att göra en kontroll (IF .......... then).
Om det stämmer vill jag att programmet skall hoppa ur här.
Skriver jag exit sub hoppar den till raden under Call i "huvudrutinen"
Det vill inte jag.......
Mycket tacksam för svar.
/MattiasSv: Få programmet att stanna ??
Som nettan skriver skall programmet stängas helt
Kan du skriva Then
Unload Me
Om det finns osynliga Formar i projektet får du
se till att även dessa får Unload via Form1 :s Unload Event
mvh
SvenSv: Få programmet att stanna ??
Kodexempel
Private Sub cmdAdd_Click()
Call Kolla_Ifylld
' Fortsätt här om villkor Kolla_Ifylld är OK.
End Sub
Private Sub Kolla_Ifylld()
If DataCombo1.Text = "0" Or DataCombo1.Text = "" Then
MsgBox "fyll i", vbOKOnly
' Här skall allting stanna och systemet skall reagera som om ingen anropat cmd_Add(Click)
Else
' Gå tillbaka till cmdAdd och fortsätt
End If
End Sub
Hoppas att detta klargör min fråga.
/MattiasSv: Få programmet att stanna ??
Varför skall programmet stanna i evigloop där, jag kan liksom inte se
var det behovet skulle uppstå.
/peterhSv: Få programmet att stanna ??
Skriv om "Kolla_Ifylld" till en funktion istället
<code>
Private Sub cmdAdd_Click()
If Kolla_Ifylld Then Exit Sub
' Fortsätt här om villkor Kolla_Ifylld är OK.
End Sub
Private Function Kolla_Ifylld() As Boolean
If DataCombo1.Text = "0" Or DataCombo1.Text = "" Then
MsgBox "fyll i", vbOKOnly
Kolla_Ifylld=True
Else
Kolla_Ifylld=False
End If
End Sub
</code>
Alt2: Skriv koden direkt i cmdAdd
<code>
Private Sub cmdAdd_Click()
If DataCombo1.Text = "0" Or DataCombo1.Text = "" Then
MsgBox "fyll i", vbOKOnly
Exit Sub
End If
'Gör annat
End Sub
</code>
/Niklas JanssonSv: Få programmet att stanna ??
Ex
Call kolla1
Call kolla2
Call kolla3
osv......
Om jag har en tom ruta i 1,2 eller 3 så stanna, annars gör det som står efter kolla10
Get the grip ???Sv: Få programmet att stanna ??
Du har X antal textboxar och alla måste vara ifyllda med rätt
sorts data för att ditt program skall fortsätta med "Task B" ?
[peter.h]Sv: Få programmet att stanna ??
Programmet skall hjälpa oss på jobbet med inrapportering vad personalen gör.
Om det inte finns avvik i produkten skall den bara uppdatera 1 tabell.
Om det dessutom finns avvik skall den uppdatera 2 tabeller.
Ledsen om jag förklarar dåligt, men jag kodar säkert lika dåligt.
Om det kan vara till någon tröst.
Tack för all hjälp, Niklas ditt förslag fungerar alldeles utmärkt.
/Mattias