1*b1cdbd2cSJim Jagielski<?xml version="1.0" encoding="UTF-8"?>
2*b1cdbd2cSJim Jagielski
3*b1cdbd2cSJim Jagielski
4*b1cdbd2cSJim Jagielski<!--***********************************************************
5*b1cdbd2cSJim Jagielski *
6*b1cdbd2cSJim Jagielski * Licensed to the Apache Software Foundation (ASF) under one
7*b1cdbd2cSJim Jagielski * or more contributor license agreements.  See the NOTICE file
8*b1cdbd2cSJim Jagielski * distributed with this work for additional information
9*b1cdbd2cSJim Jagielski * regarding copyright ownership.  The ASF licenses this file
10*b1cdbd2cSJim Jagielski * to you under the Apache License, Version 2.0 (the
11*b1cdbd2cSJim Jagielski * "License"); you may not use this file except in compliance
12*b1cdbd2cSJim Jagielski * with the License.  You may obtain a copy of the License at
13*b1cdbd2cSJim Jagielski *
14*b1cdbd2cSJim Jagielski *   http://www.apache.org/licenses/LICENSE-2.0
15*b1cdbd2cSJim Jagielski *
16*b1cdbd2cSJim Jagielski * Unless required by applicable law or agreed to in writing,
17*b1cdbd2cSJim Jagielski * software distributed under the License is distributed on an
18*b1cdbd2cSJim Jagielski * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
19*b1cdbd2cSJim Jagielski * KIND, either express or implied.  See the License for the
20*b1cdbd2cSJim Jagielski * specific language governing permissions and limitations
21*b1cdbd2cSJim Jagielski * under the License.
22*b1cdbd2cSJim Jagielski *
23*b1cdbd2cSJim Jagielski ***********************************************************-->
24*b1cdbd2cSJim Jagielski
25*b1cdbd2cSJim Jagielski
26*b1cdbd2cSJim Jagielski
27*b1cdbd2cSJim Jagielski<helpdocument version="1.0">
28*b1cdbd2cSJim Jagielski<meta>
29*b1cdbd2cSJim Jagielski<topic id="textsbasicshared03090303xml" indexer="include" status="PUBLISH">
30*b1cdbd2cSJim Jagielski<title id="tit" xml-lang="en-US">On...GoSub Statement; On...GoTo Statement [Runtime]</title>
31*b1cdbd2cSJim Jagielski<filename>/text/sbasic/shared/03090303.xhp</filename>
32*b1cdbd2cSJim Jagielski</topic>
33*b1cdbd2cSJim Jagielski<history>
34*b1cdbd2cSJim Jagielski<created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created>
35*b1cdbd2cSJim Jagielski<lastedited date="2004-08-24T13:49:47">converted from old format - fpe</lastedited>
36*b1cdbd2cSJim Jagielski</history>
37*b1cdbd2cSJim Jagielski</meta>
38*b1cdbd2cSJim Jagielski<body>
39*b1cdbd2cSJim Jagielski<section id="ongosub">
40*b1cdbd2cSJim Jagielski<bookmark xml-lang="en-US" branch="index" id="bm_id3153897"><bookmark_value>On...GoSub statement</bookmark_value>
41*b1cdbd2cSJim Jagielski<bookmark_value>On...GoTo statement</bookmark_value>
42*b1cdbd2cSJim Jagielski</bookmark>
43*b1cdbd2cSJim Jagielski<paragraph role="heading" id="hd_id3153897" xml-lang="en-US" level="1" l10n="U" oldref="1"><link href="text/sbasic/shared/03090303.xhp" name="On...GoSub Statement; On...GoTo Statement [Runtime]">On...GoSub Statement; On...GoTo Statement [Runtime]</link></paragraph>
44*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3150359" xml-lang="en-US" l10n="U" oldref="2">Branches to one of several specified lines in the program code, depending on the value of a numeric expression.</paragraph>
45*b1cdbd2cSJim Jagielski</section>
46*b1cdbd2cSJim Jagielski<paragraph role="heading" id="hd_id3148798" xml-lang="en-US" level="2" l10n="U" oldref="3">Syntax:</paragraph>
47*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3154366" xml-lang="en-US" l10n="U" oldref="4">On N GoSub Label1[, Label2[, Label3[,...]]]</paragraph>
48*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3150769" xml-lang="en-US" l10n="U" oldref="5">On NumExpression GoTo Label1[, Label2[, Label3[,...]]]</paragraph>
49*b1cdbd2cSJim Jagielski<paragraph role="heading" id="hd_id3156215" xml-lang="en-US" level="2" l10n="U" oldref="6">Parameters:</paragraph>
50*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3148673" xml-lang="en-US" l10n="U" oldref="7">
51*b1cdbd2cSJim Jagielski<emph>NumExpression:</emph> Any numeric expression between 0 and 255 that determines which of the lines the program branches to. If NumExpression is 0, the statement is not executed. If NumExpression is greater than 0, the program jumps to the label that has a position number that corresponds to the expression (1 = First label; 2 = Second label)</paragraph>
52*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3153194" xml-lang="en-US" l10n="U" oldref="8">
53*b1cdbd2cSJim Jagielski<emph>Label:</emph> Target line according to<emph> GoTo </emph>or <emph>GoSub</emph> structure.</paragraph>
54*b1cdbd2cSJim Jagielski<paragraph role="note" id="par_id3156442" xml-lang="en-US" l10n="U" oldref="9">The <emph>GoTo</emph> or <emph>GoSub </emph>conventions are valid.</paragraph>
55*b1cdbd2cSJim Jagielski<paragraph role="heading" id="hd_id3148645" xml-lang="en-US" level="2" l10n="U" oldref="10">Example:</paragraph>
56*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3154014" xml-lang="en-US" l10n="U" oldref="12">Sub ExampleOnGosub</paragraph>
57*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3153158" xml-lang="en-US" l10n="U" oldref="13">Dim iVar As Integer</paragraph>
58*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3154490" xml-lang="en-US" l10n="U" oldref="14">Dim sVar As String</paragraph>
59*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3155417" xml-lang="en-US" l10n="U" oldref="15">iVar = 2</paragraph>
60*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3154730" xml-lang="en-US" l10n="U" oldref="16">sVar =""</paragraph>
61*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3154942" xml-lang="en-US" l10n="U" oldref="17">On iVar GoSub Sub1, Sub2</paragraph>
62*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3149378" xml-lang="en-US" l10n="U" oldref="18">On iVar GoTo Line1, Line2</paragraph>
63*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3153416" xml-lang="en-US" l10n="U" oldref="19">Exit Sub</paragraph>
64*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3154015" xml-lang="en-US" l10n="U" oldref="20">Sub1:</paragraph>
65*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3153948" xml-lang="en-US" l10n="U" oldref="21">sVar =sVar &amp; " From Sub 1 to" : Return</paragraph>
66*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3150750" xml-lang="en-US" l10n="U" oldref="22">Sub2:</paragraph>
67*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3153708" xml-lang="en-US" l10n="U" oldref="23">sVar =sVar &amp; " From Sub 2 to" : Return</paragraph>
68*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3155067" xml-lang="en-US" l10n="U" oldref="24">Line1:</paragraph>
69*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3150321" xml-lang="en-US" l10n="U" oldref="25">sVar =sVar &amp; " Label 1" : GoTo Ende</paragraph>
70*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3149019" xml-lang="en-US" l10n="U" oldref="26">Line2:</paragraph>
71*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3155764" xml-lang="en-US" l10n="U" oldref="27">sVar =sVar &amp; " Label 2"</paragraph>
72*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3153711" xml-lang="en-US" l10n="U" oldref="28">Ende:</paragraph>
73*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3154253" xml-lang="en-US" l10n="U" oldref="29">MsgBox sVar,0,"On...Gosub"</paragraph>
74*b1cdbd2cSJim Jagielski<paragraph role="paragraph" id="par_id3149565" xml-lang="en-US" l10n="U" oldref="30">End Sub</paragraph>
75*b1cdbd2cSJim Jagielski</body>
76*b1cdbd2cSJim Jagielski</helpdocument>
77