會變更資料表中,本機自訂欄位欄的資料類型。
語法
expression.
ChangeColumnDataType( _Type_, _Column_ )
詞 一個回傳 應用程式 物件的表達式。
參數
| 名稱 | 必要/選用 | 資料類型 | 描述 |
|---|---|---|---|
| Type | 必要 | PjFieldTypes | 會指定自訂欄位資料類型。 此值可以是 PjFieldTypes 常數之一。 預設值為 0 (pjCostField)。 |
| 欄 | 選用 | 變數 | 會指定絕對的欄位置。 若值為 0,則會變更位於最左邊之欄的資料類型 (如果該欄是本機自訂欄位)。 如果第一欄已鎖定,則最左邊的欄就會是已鎖定欄後面的第一欄。 預設值為選取的欄。 |
傳回值
布林值
註解
ChangeColumnDataType 需要要選取的自訂欄位] 欄。 若要手動變更自訂欄位] 欄的資料類型,新增至表格檢視中自訂欄位欄、 以滑鼠右鍵按一下欄標題中和 [ 資料類型。
範例
若要使用下列範例中,建立具有數個工作的專案並再開啟 [甘特圖] 檢視。 CreateTestTable巨集建立具有四欄工作表。 鎖定第一欄具有 [識別碼] 欄位。 第二欄具有標題 任務名稱、 第三欄包含 Text1 任務自訂欄位、 和第四欄包含 數字 1 自訂欄位。 巨集表給目前的檢視,然後將文字及數字值新增任務] 自訂欄位。
執行 CreateTestTable巨集。 第一個任務的 Text1 自訂欄位值為 42 X。
執行 SwitchNumberAndText 巨集。 巨集會切換這兩個自訂欄位的標題和類型。
注意事項
由於第一個任務中 Text1 自訂欄位的值是 42 X,當 ChangeColumnDataType 嘗試將該欄位轉換成 Number1 自訂欄位時,專案會顯示錯誤對話框,並顯示「 轉換此資料將產生錯誤」。1 筆紀錄的內容將會被刪除。你還想繼續嗎? 3. 繼續轉換,請在錯誤對話框中點擊 「是 」。 When the Text1 custom field changes to the Number1 custom field, the value 42 X changes to 0.
- 若要在 [甘特圖] 檢視中變回標準資料表,請以滑鼠右鍵按一下 [全選] 儲存格 (在資料表中,未命名的左上方儲存格),然後在下拉式清單中選取另一個資料表。
Sub CreateTestTable()
Dim t As Task
Dim n As Integer
TableEditEx Name:="Task Test Table", TaskTable:=True, Create:=True, FieldName:="ID", _
Width:=5, ShowInMenu:=True, HeaderAutoRowHeightAdjustment:=True, _
ShowAddNewColumn:=False
TableEditEx Name:="Task Test Table", TaskTable:=True, NewFieldName:="Name", Title:="Task Name"
TableEditEx Name:="Task Test Table", TaskTable:=True, NewFieldName:="Text1"
TableEditEx Name:="Task Test Table", TaskTable:=True, NewFieldName:="Number1"
TableEditEx Name:="Task Test Table", TaskTable:=True, LockFirstColumn:=True
TableApply Name:="Task Test Table"
n = 42
For Each t In ActiveProject.Tasks
If n = 42 Then
t.Text1 = CStr(n) & " X"
Else
t.Text1 = CStr(n)
End If
t.Number1 = n
n = n + 2
Next t
End Sub
Sub SwitchNumberAndText()
SelectTaskColumn Column:="Number1"
ChangeColumnDataType Type:=pjTextField
SelectTaskColumn Column:="Text1"
ChangeColumnDataType Type:=pjNumberField
End Sub
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。