<?xml version="1.0" encoding="UTF-8"?>


<!--***********************************************************
 * 
 * Licensed to the Apache Software Foundation (ASF) under one
 * or more contributor license agreements.  See the NOTICE file
 * distributed with this work for additional information
 * regarding copyright ownership.  The ASF licenses this file
 * to you under the Apache License, Version 2.0 (the
 * "License"); you may not use this file except in compliance
 * with the License.  You may obtain a copy of the License at
 * 
 *   http://www.apache.org/licenses/LICENSE-2.0
 * 
 * Unless required by applicable law or agreed to in writing,
 * software distributed under the License is distributed on an
 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
 * KIND, either express or implied.  See the License for the
 * specific language governing permissions and limitations
 * under the License.
 * 
 ***********************************************************-->


	
<helpdocument version="1.0">
<meta>
<topic id="textsbasicshared03030203xml" indexer="include" status="PUBLISH">
<title id="tit" xml-lang="en-US">Now Function [Runtime]</title>
<filename>/text/sbasic/shared/03030203.xhp</filename>
</topic>
<history>
<created date="2003-10-31T00:00:00">Sun Microsystems, Inc.</created>
<lastedited date="2004-08-24T13:44:47">converted from old format - fpe</lastedited>
</history>
</meta>
<body>
<section id="now">
<bookmark xml-lang="en-US" branch="index" id="bm_id3149416"><bookmark_value>Now function</bookmark_value>
</bookmark>
<paragraph role="heading" id="hd_id3149416" xml-lang="en-US" level="1" l10n="U" oldref="1"><link href="text/sbasic/shared/03030203.xhp" name="Now Function [Runtime]">Now Function [Runtime]</link></paragraph>
<paragraph role="paragraph" id="par_id3149670" xml-lang="en-US" l10n="U" oldref="2">Returns the current system date and time as a <emph>Date</emph> value.</paragraph>
</section>
<paragraph role="heading" id="hd_id3149456" xml-lang="en-US" level="2" l10n="U" oldref="3">Syntax:</paragraph>
<paragraph role="paragraph" id="par_id3149655" xml-lang="en-US" l10n="U" oldref="4">Now</paragraph>
<paragraph role="heading" id="hd_id3154366" xml-lang="en-US" level="2" l10n="U" oldref="5">Return value:</paragraph>
<paragraph role="paragraph" id="par_id3154909" xml-lang="en-US" l10n="U" oldref="6">Date</paragraph>
<paragraph role="heading" id="hd_id3147229" xml-lang="en-US" level="2" l10n="U" oldref="7">Example:</paragraph>
<paragraph role="paragraph" id="par_id3145172" xml-lang="en-US" l10n="U" oldref="8">Sub ExampleNow</paragraph>
<paragraph role="paragraph" id="par_id3150870" xml-lang="en-US" l10n="U" oldref="9">msgbox "It is now " &amp; Now</paragraph>
<paragraph role="paragraph" id="par_id3145787" xml-lang="en-US" l10n="U" oldref="10">End sub</paragraph>
</body>
</helpdocument>
