VBA Project Spalte Sammelvorgang

Fragen zu allen anderen Office Anwendungen

Moderator: ModerationP

VBA Project Spalte Sammelvorgang

Beitragvon Zeichner » 12. Jul 2019, 09:03

Hi zusammen

Ich würde gerne in MS Project mit VBA auf die Sammelvorgänge zugreifen um diese zu formatieren.
Ist das möglich ohne das ich die Spalte "Sammelvorgang" sichtbar habe?
Ich habe bisher nur mit

SelectRange row:=i + 1, Column:=2, RowRelative:=False

gearbeitet, da verweise ich auf die Spalte 1 wo momentan die Sammelvorgang-spalte ist. Aber wie kann ich auf die Warte zugreifen wenn ich die Spalte nicht sichtbar haben möchte?

Vielen Dank
Zeichner
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 5
Registriert: 01. Mai 2019, 14:52

Re: VBA Project Spalte Sammelvorgang

Beitragvon snb » 12. Jul 2019, 09:06

Beispieldatei und Wünschergebnis ?
snb
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6907
Registriert: 25. Sep 2014, 16:37

Re: VBA Project Spalte Sammelvorgang

Beitragvon Ralf A » 12. Jul 2019, 09:11

Hi Zeichner,

ich habe zwar kein MS Projekt, kann also nicht viel dazu sagen, aber auch da dürfte es nicht viel anders sein, als bei allen anderen Objekten. Visible und Value sind unterschiedliche Eigenschaften, die sich gegenseitig nicht ausschliessen. Klar, wenn Du persönlich vor der Kiste sitzt, dann ist Visible = false natürlich relevant, aber für den VBA Zugriff ist das ohne Bedeutung. Die Kiste schaut nicht auf den Monitor sondern im RAM nach....:)
Ciao, Ralf
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.

Bild
Ralf A
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 561
Registriert: 17. Mär 2018, 11:47

Re: VBA Project Spalte Sammelvorgang

Beitragvon Zeichner » 12. Jul 2019, 09:47

snb hat geschrieben:Beispieldatei und Wünschergebnis ?

Hi snb mein Kompletter Code ist dazu da die Balken anhand von bestimmten Werten (Vorgangs namen) einzufärben.
Jetzt würde ich gerne zusätzlich alle Sammelvorgänge finden und bei diesen die Balkenart ändern, aber ich möchte die Spalte "Sammelvorgänge" bzw. "Summary" nicht im Programm ersichtlich haben.
Wie kann ich auf diese Werte zugreifen?

Code: Alles auswählen
Sub BalkenFärben()

    Dim Inhalt, InhaltNeu, Trennzeichen, Trennzeichen2 As String
    Dim i, Werte As Integer
    Dim ArrDaten(0 To 10, 0 To 10) As Double
    Dim Sammelvorgang As Boolean
   
   
    Trennzeichen = "_"


    'Von - Bis Spalten
    For i = 0 To 40
   
        'definiere Zeile mit schleife
        SelectRange row:=i + 1, Column:=2, RowRelative:=False
        Inhalt = ActiveCell
       
        'If IsEmpty(ActiveCell.row) = True Then End
        'letzte zeile finden????
       
        'Wenn Zelle leer dann nächster schritt in Schleife
        If Inhalt = "" Then
       
        'Wenn Zelle nicht leer dann:
        Else
            Inhalt = Split(Inhalt, Trennzeichen)(0)
             
                ArrDaten(0, 0) = 111#: ArrDaten(0, 1) = 5855577
                ArrDaten(1, 0) = 112#: ArrDaten(1, 1) = 5855577
                ArrDaten(2, 0) = 113#: ArrDaten(2, 1) = 5855577
                ArrDaten(3, 0) = 114#: ArrDaten(3, 1) = 5855577
                ArrDaten(4, 0) = 114.1: ArrDaten(4, 1) = 5855577
                ArrDaten(5, 0) = 115#: ArrDaten(5, 1) = 5855577
                ArrDaten(6, 0) = 116#: ArrDaten(6, 1) = 5855577
                ArrDaten(7, 0) = 171#: ArrDaten(7, 1) = 9279917
                ArrDaten(8, 0) = 172#: ArrDaten(8, 1) = 8498133
                ArrDaten(9, 0) = 173#: ArrDaten(9, 1) = 8498133
                ArrDaten(10, 0) = 174#: ArrDaten(10, 1) = 8498133
               
   
                For Werte = 0 To 10
                    If ArrDaten(Werte, 0) = Inhalt Then
                   
                   
                        GanttBarFormatEx MiddleShape:=1, MiddlePattern:=1, MiddleColor:=ArrDaten(Werte, 1), StartColor:=ArrDaten(Werte, 1), EndColor:=ArrDaten(Werte, 1)
                        GanttBarFormat lefttext:="Anfang"
                        GanttBarFormat righttext:="Name"
                     
                    End If
                Next Werte
            End If
           
    Next i
   
End Sub
Zeichner
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 5
Registriert: 01. Mai 2019, 14:52

Re: VBA Project Spalte Sammelvorgang

Beitragvon Zeichner » 12. Jul 2019, 09:50

Ralf A hat geschrieben:Hi Zeichner,

ich habe zwar kein MS Projekt, kann also nicht viel dazu sagen, aber auch da dürfte es nicht viel anders sein, als bei allen anderen Objekten. Visible und Value sind unterschiedliche Eigenschaften, die sich gegenseitig nicht ausschliessen. Klar, wenn Du persönlich vor der Kiste sitzt, dann ist Visible = false natürlich relevant, aber für den VBA Zugriff ist das ohne Bedeutung. Die Kiste schaut nicht auf den Monitor sondern im RAM nach....:)


Hi Ralf A
Da ich Programmieranfänger bin und somit noch die Erfahrung fehlt finde ich es sehr schwer zu erkennen wie und wo ich auf die Informationen zugreifen muss :?:
Zeichner
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 5
Registriert: 01. Mai 2019, 14:52

Re: VBA Project Spalte Sammelvorgang

Beitragvon Ralf A » 13. Jul 2019, 10:03

Hi Zeichner,

sieht wohl eher nach MS Project Code aus, denn RowRelative kennt Excel VBA nicht. Dennoch ein paar Anmerkungen zu Deinem Code:

Sehr wahrscheinlich kannst Du Dir auch in MS Projekt die ganze Selektiererei ersparen. Dass man in Projekt mit
'definiere Zeile mit schleife
SelectRange row:=i + 1, Column:=2, RowRelative:=False

eine Schleife erstellen kann, ist interessant, aber wie gesagt, solche Anweisungen gibt es in Excel nicht.
Vielleicht wendest Du Dich besser an ein MS Project Forum: https://www.bing.com/search?pc=COS2&ptag=D021919-N0610A6B219395BABB4E59ADF&conlogo=CT3332005&q=Forum+%2B+MSProject&form=CONBDF
Ciao, Ralf
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.

Bild
Ralf A
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 561
Registriert: 17. Mär 2018, 11:47

Re: VBA Project Spalte Sammelvorgang

Beitragvon HKindler » 15. Jul 2019, 08:49

Hi Ralf,

Ralf A hat geschrieben:Dass man in Projekt mit
'definiere Zeile mit schleife
SelectRange row:=i + 1, Column:=2, RowRelative:=False

eine Schleife erstellen kann, ist interessant

Nun ja, die Schleife wird ja eine Zeile vorher mit
Code: Alles auswählen
For i = 0 To 40
definiert. Hier passiert wohl das gleiche wie in Excel mit
Code: Alles auswählen
Rows(i + 1).Columns(2).Select
oder etwas üblicher
Code: Alles auswählen
Cells(i + 1, 2).Select
Aber das alles ist nur eine Vermutung. Auch ich habe kein MS-Project.
Gruß,
Helmut

----------------------------
Windows 10 Enterprise (64 Bit) / Office 365 ProPlus (32 Bit)
Benutzeravatar
HKindler
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 3511
Registriert: 04. Jul 2013, 09:02


Zurück zu Andere Office Fragen (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste