# 表格函數

表格函數傳回目前讀取之資料表格的相關資訊。如果未指定任何表格名稱，並且在 LOAD 陳述式內使用函數，則會採用目前表格。

所有函數都可以用於載入指令碼中，而只有 NoOfRows 可用於圖表運算式中。

使用各個函數的下拉式清單，查看各函數的簡短描述及語法。對於某些函數，按一下語法描述中的函數名稱，可取得有關該特定函數的進一步詳細資料。

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/table-functions.htm)

#### FieldName

FieldName 指令碼函數會傳回先前載入表格內指定編號之欄位的名稱。如果此函數用於 LOAD 陳述式內，則不得參考目前正在載入的表格。

[**FieldName**](https://help.qlik.com/zh-TW/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/FieldName.htm)(field\_number ,table\_name)

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/table-functions.htm)

#### FieldNumber

FieldNumber 指令碼函數會傳回先前載入表格內指定欄位的編號。如果此函數用於 LOAD 陳述式內，則不得參考目前正在載入的表格。

[**FieldNumber**](https://help.qlik.com/zh-TW/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/FieldNumber.htm)(field\_name ,table\_name)

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/table-functions.htm)

#### NoOfFields

NoOfFields 指令碼函數會傳回先前載入表格的欄位數。如果此函數用於 LOAD 陳述式內，則不得參考目前正在載入的表格。

[**NoOfFields**](https://help.qlik.com/zh-TW/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/NoOfFields.htm)(table\_name)

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/table-functions.htm)

#### NoOfRows

NoOfRows 函數會傳回先前載入表格中的列數 (記錄筆數)。如果此函數用於 LOAD 陳述式內，則不得參考目前正在載入的表格。

[**NoOfRows**](https://help.qlik.com/zh-TW/qlikview/May2024/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/NoOfRows.htm)(table\_name)

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/table-functions.htm)

#### NoOfTables

此指令碼函數傳回先前載入表格的編號。

NoOfTables()

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/table-functions.htm)

#### TableName

此指令碼函數傳回指定編號之表格的名稱。

TableName(table\_number)

[](https://help.qlik.com/en-US/qlikview/Subsystems/Client/Content/QV_QlikView/Scripting/TableFunctions/table-functions.htm)

#### TableNumber

此指令碼函數傳回指定表格的編號。第一個表格編號為 0。

若 table\_name 不存在，不會傳回任何值。若函數設定為傳回函數值，則不會初始化此變數。作為因應措施，您可以指定 `LET vImaginaryTabNum = If(TableNumber('NotExistingTable')>=0,TableNumber('NotExistingTable'),'NULL') ;`

TableNumber(table\_name)

範例：

在此範例中，我們想要使用已載入表格和欄位的相關資訊建立表格。

首先，我們載入樣本資料。這會建立將用來說明本節中描述之表格函數的兩個表格。

```
Characters: Load Chr(RecNo()+Ord('A')-1) as Alpha, RecNo() as Num autogenerate 26;  ASCII: Load   if(RecNo()>=65 and RecNo()<=90,RecNo()-64) as Num,  Chr(RecNo()) as AsciiAlpha,   RecNo() as AsciiNum autogenerate 255  Where (RecNo()>=32 and RecNo()<=126) or RecNo()>=160 ;
```

```
 
```

接下來，我們使用 NoOfTables 函數，反覆運算已載入的表格，然後使用 NoOfFields 函數，反覆運算每一個表格的欄位，最後使用表格函數載入資訊。

```
//Iterate through the loaded tables For t = 0 to NoOfTables() - 1  //Iterate through the fields of table  For f = 1 to NoOfFields(TableName($(t)))   Tables:   Load     TableName($(t)) as Table,    TableNumber(TableName($(t))) as TableNo,    NoOfRows(TableName($(t))) as TableRows,    FieldName($(f),TableName($(t))) as Field,     FieldNumber(FieldName($(f),TableName($(t))),TableName($(t))) as FieldNo    Autogenerate 1;  Next f Next t;
```

產生的表格 Tables 將如下所示：

Tables table

| Table | TableNo | TableRows | Field | FieldNo |
| --- | --- | --- | --- | --- |
| Characters | 0 | 26 | Alpha | 1 |
| Characters | 0 | 26 | Num | 2 |
| ASCII | 1 | 191 | Num | 1 |
| ASCII | 1 | 191 | AsciiAlpha | 2 |
| ASCII | 1 | 191 | AsciiNum | 3 |