Seek 函数

注意: 如果 Microsoft Jet Expression Service 在沙盒模式下运行,则禁用本主题中所述的函数、方法、对象或属性,这会阻止评估可能不安全的表达式。 有关沙盒模式的详细信息,请搜索"帮助"中的"沙盒模式"。

返回 Long 值,指定使用 Open 语句打开的文件中当前的读/ 位置。

语法

查找 ( 文件编号)

所需的 filenumber参数 是一个整数,其中包含有效的 文件编号 。

备注

" 寻道"返回介于 1 和 2,147,483,647 (等于 2^31 – 1) 的值(含)。

下面描述了每个文件访问模式的返回值。

Mode

返回值

随机

读取或写入的下一条记录数

二进制
输出
、追加
输入

下一个操作发生位置的字节位置。 文件的第一个字节位于位置 1,第二个字节位于位置 2,以此类比。


示例

注意: 以下示例演示了在 VBA Visual Basic for Applications (模块) 函数。 有关使用 VBA 的信息,请在"搜索"旁边的下拉列表中选择"开发人员参考",在搜索框中输入一个或多个术语。

此示例使用 Seek 函数返回当前文件位置。 该示例假定 TESTFILE 是一个文件,其中包含用户定义的类型为 Record

Type Record    ' Define user-defined type.
ID As Integer
Name As String * 20
End Type

对于在随机模式下打开的文件 ,"查找 "返回下一条记录的数量。

Dim MyRecord As Record    ' Declare variable.
Open "TESTFILE" For Random As #1 Len = Len(MyRecord)
Do While Not EOF(1) ' Loop until end of file.
Get #1, , MyRecord ' Read next record.
' Print record number to the Immediate window.
Debug.Print Seek(1)
Loop
Close #1 ' Close file.

对于以随机模式外模式打开的文件 ,"寻 道"返回下一个操作发生在的字节位置。 假设 TESTFILE 是一个包含几行文本的文件。

Dim MyChar
Open "TESTFILE" For Input As #1 ' Open file for reading.
Do While Not EOF(1) ' Loop until end of file.
MyChar = Input(1, #1) ' Read next character of data.
' Print byte position to the Immediate window.
Debug.Print Seek(1)
Loop
Close #1 ' Close file.

需要更多帮助?

扩展你的 Office 技能
了解培训
抢先获得新功能
加入 Office 预览体验计划

此信息是否有帮助?

谢谢您的反馈!

谢谢你的反馈! 可能需要转接到 Office 支持专员。

×