Application.ChangeColumnDataType-Methode (Project)

Ändert den Datumstyp einer Spalte für lokale benutzerdefinierte Felder in einer Tabelle.

Syntax

Ausdruck. ChangeColumnDataType( _Type_, _Column_ )

Ausdruck Ein Ausdruck, der ein Application-Objekt zurückgibt.

Parameter

Name Erforderlich/Optional Datentyp Beschreibung
Typ Erforderlich PjFieldTypes Gibt den Typ der Daten im benutzerdefinierten Feld. Der Wert kann einer der PjFieldTypes -Konstanten entsprechen. Der Standardwert ist 0 (pjCostField).
Spalte Optional Variant Specifies the absolute column location. A value of 0 changes the data type of a column in the left-most position, if that column is a local custom field. If the first column is locked, the left-most position is the first column after the locked column. The default value is the selected column.

Rückgabewert

Boolean

Bemerkungen

ChangeColumnDataType erfordert eine Spalte ein benutzerdefiniertes Feld ausgewählt werden. Um den Datentyp einer Spalte des benutzerdefinierten Felds zu ändern, Hinzufügen einer Spalteninhalts des benutzerdefinierten Felds zu einer Tabelle in einer Ansicht, mit der rechten Maustaste der Spaltenüberschrift, und klicken Sie dann auf Datentyp.

Beispiel

Um das folgende Beispiel zu verwenden, erstellen Sie ein Projekt mit mehrere Aufgaben, und öffnen Sie die Ansicht Balkendiagramm (Gantt). Das Makro CreateTestTable erstellt eine Aufgabentabelle mit vier Spalten. Die erste Spalte mit dem ID-Feld ist gesperrt. Die zweite Spalte ist des Titels Vorgangsname, die dritte Spalte enthält das benutzerdefinierte Vorgangsfeld Text1, und die vierte Spalte enthält das benutzerdefinierte Feld Zahl1. Das Makro weist die Tabelle auf die aktuelle Ansicht, und klicken Sie dann die benutzerdefinierte Vorgangsfelder Text und Zahlen hinzugefügt.

  1. Führen Sie das Makro CreateTestTable. Der Wert des benutzerdefinierten Felds Text1 des ersten Vorgangs ist 42 X.

  2. Führen Sie das Makro SwitchNumberAndText aus. Das Makro vertauscht die Überschriften und Typen der zwei benutzerdefinierten Felder.

    Hinweis

Da der Wert des benutzerdefinierten Felds Text1 in der ersten Aufgabe 42 X beträgt, zeigt Project ein Fehlerdialogfeld mit der Meldung Convertieren dieser Daten verursacht Fehler, wenn ChangeColumnDataType versucht, diese Spalte in das benutzerdefinierte Feld Zahl1 zu konvertieren . Der Inhalt von 1 Datensätzen wird gelöscht. Möchten Sie trotzdem fortfahren? 3. Klicken Sie im Fehlerdialogfeld auf Ja , um mit der Konvertierung fortzufahren. Die benutzerdefinierten Felds Text1 geändert wird an das benutzerdefinierte Feld Zahl1, wenn der Wert 42 X auf 0 geändert.

  1. Wenn Sie zur Standardtabelle in der Gantt-Diagrammansicht zurückkehren möchten, klicken Sie mit der rechten Maustaste auf die Zelle Alles auswählen (die unbenannte obere linke Zelle in der Tabelle), und wählen Sie dann in der Dropdownliste eine andere Tabelle aus.
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

Support und Feedback

Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.