Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Moderator: ModerationP

Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon PanzerMensch » 28. Mär 2017, 08:02

Hallo,

ich möchte gerne per Makro sagen, sobald ich einen Haken in meine Checkbox setze, soll in Zelle A1 der Exceltabelle die als Objekt eingefügt wurde der Text "Richtig" eingetragen werden.

Mein Problem ist, dass ich den Befehl nicht finde wie ich das Objekt (Exceltabelle) ansprechen kann. Die Checkboxen kann ich ansprechen aber irgendwie finde ich keinen Code der mir zeigt wie ich das Objekt ansprechen kann um Werte in die Exceltabelle per makro eintragen zu lassen.

Kann mir hierzu jemand helfen?

Vielen Dank!
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
PanzerMensch
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 28. Mär 2017, 07:55

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon PanzerMensch » 28. Mär 2017, 11:55

Habe es bisher damit probiert:

Private Sub CheckBox21_Click()
ActivePresentation.Slides(1).Shapes(3).Cell(1, 1).Shape.TextFrame.TextRange.Text = "Cell 1"
End Sub

Der Debugger streikt aber an der Stelle ".Cell(1, 1)"

Somit vermute ich, dass ich mit der Methode nicht auf die Zellen der eingebetteten Excel Tabelle zugreifen kann.
PanzerMensch
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 28. Mär 2017, 07:55

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon Gast » 28. Mär 2017, 20:28

Hi,

da fehlt etwas:

ActivePresentation.Slides(1).Shapes(3).Table.Cell(1, 1).Shape.TextFrame.TextRange.Text = "Cell 1"

VG
Weltbürger
Gast
 

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon PanzerMensch » 29. Mär 2017, 06:18

Hallo Weltbürger,

danke für deinen Tipp.
Habe deine Zeile in meinem Beispiel im ersten Post eingefügt und nun bleibt der Debugger nicht mehr bei Cell hängen.
Nun zeigt er mir aber die ganze Zeile gelb an und gibt folgende Fehlermeldung aus:

Meldung.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
PanzerMensch
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 28. Mär 2017, 07:55

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon PanzerMensch » 29. Mär 2017, 09:40

Meldung 2.jpg


Ich bin noch ein wenig weiter gekommen. Füge ich eine normale Tabelle in Powerpoint ein funktioniert folgender Code:

Sub CheckBox21_Click()
If CheckBox21.Value = True Then
ActivePresentation.Slides(1).Shapes(2).Table.Cell(1, 1).Shape.TextFrame.TextRange.Text = 19
End If
End Sub

Spreche ich über die Shape Nummer nun die Exceltabelle (Objekt) an kommt eine Fehlermeldung. Ich vermute, dass Table der falsche befehl ist für solch ein Objekt.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
PanzerMensch
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 4
Registriert: 28. Mär 2017, 07:55

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon Fennek » 29. Mär 2017, 15:52

Hallo,

bei einem kleinen Test fand ich eine Möglichkeit. Die Anpassung schaffst du.

Code: Alles auswählen
Sub fromXL()
'Verweis auf MS Excel Object Libary
iPath = "c:\temp\"
iFile = "PP Daten.xlsx"
Set xl = GetObject(iPath & iFile)
With xl.sheets(1)
For i = 1 To .Cells(.Rows.Count, "A").End(xlup).Row
    Debug.Print .Cells(i, "A"), .Cells(i, "B")
Next i
End With
xl.Close 0
End Sub


mfg

Das Einlesen in das Sheet eines PP-Charts habe ich auch geschafft (erster Test mit PP)
Benutzeravatar
Fennek
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 619
Registriert: 12. Feb 2016, 18:56

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon NordicStalker » 30. Mär 2017, 07:36

Muss man dann den Pfad zur Powerpoint angeben? Denn die Exceltabelle befindet sich ja in der Powerpoint!

iPath = "c:\temp\"
iFile = "PP Daten.xlsx"

Hier dann einfach die Powerpoint Datei angeben?

Ich erhalte dann aber den Fehler:
Laufzeitfehler '438': bjekt unterstützt diese Eigenschaft oder Methode nicht

Kannst du deine Lösung mal in die Powerpoint von oben reinbauen und wieder hochladen?

Vielen dank!
NordicStalker
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 30. Mär 2017, 07:13

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon Fennek » 30. Mär 2017, 08:28

Hallo,

Zugriff auf die Daten eines Charts in PP erhält man so:

Code: Alles auswählen
Sub DatenTab()
Dim SL As Slide
Dim Tbl As ChartData
Set SL = ActivePresentation.Slides(1)
'SL.Shapes(3).Chart.ChartTitle.Text = "Mein Titel" 'ok
With SL.Shapes("Chart 6")
     .Chart.ChartData.Activate
     '.Chart.ChartData.Workbook.Worksheets(1).Range("B2") = 5 'OK
Debug.Print .Chart.ChartData.Workbook.Worksheets(1).Range("A2").Offset(3, 0).Value 'ok: .Cells(2, 1).Value 'OK:.Rows.Count
Debug.Print .Chart.ChartData.Workbook.Worksheets(1).UsedRange.Address
     .Chart.ChartData.Workbook.Close
End With
End Sub


Viele, aber nicht alle xl-Befehle funnktionieren, eventuell müßte ein Verweis gesetzt werden.

mfg
Benutzeravatar
Fennek
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 619
Registriert: 12. Feb 2016, 18:56

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon NordicStalker » 30. Mär 2017, 11:35

Das sieht schon gut aus. Danke für deine Mühe!

Klappt nur noch nicht. Es versucht mit deinem Code schon auf die Tabelle zu zugreifen aber es sagt dann folgendes:

Fehler 3.jpg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
NordicStalker
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 30. Mär 2017, 07:13

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon Fen » 30. Mär 2017, 12:26

Hallo,

ich hatte mich auf den Title der Frage konzentriert und erst später die PP-Datei unter #1 geöffnet, fand sie aber nichts-sagend.

Frage: Hast du in meinem code die Nummer des Shapes angepasst?

Ist es möglich, eine aussagekräftige Bsp-Datei hochzuladen?

Ansonsten, das Zeigen der Fehlermeldung ist schon gut, aber in welcher Code-Zeile ist er aufgetreten.

mfg
Fen
 

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon NordicStalker » 30. Mär 2017, 16:20

Hallo,

ich habe das korrekte Slide angegeben mit der 1.
Er markiert folgende Zeile:
Fehler4.jpg


Anbei noch die Beispiel Datei.
Wenn ich den Haken in der Checkbox setzte, soll ein Wert oder ein Wort in Zelle A1 der Excel Tabelle eingetragen werden.
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
NordicStalker
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 30. Mär 2017, 07:13

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon Fennek » 30. Mär 2017, 18:47

Hallo,

da ich keine zip-Dateien öffne, habe ich die pptx aus #1 genutzt.

Die "Tabelle" ist ein OleObject, das eher "unhandlich" anzusprechen ist.

Der Code für die CheckBox:

Code: Alles auswählen
Private Sub CheckBox21_Click()
Dim xl As Object
Dim Sh As Object
Set xl = CreateObject("Excel.Application")
Set xl = ActivePresentation.Slides(1).Shapes(1).OLEFormat
Set Sh = xl.Object
Sh.Activate
Sh.sheets(1).Range("A5") = Val(Sh.sheets(1).Range("A5")) + 5
Sh.Close
Set Sh = Nothing
Set xl = Nothing
End Sub


Wenn während einer Bildschirmpräsentation die CheckBox geklickt wird, wird eine Zelle (A5) um jeweils 5 hochgezählt.

Hoffentlich hilfs es dir, zum Lernen (und Knobeln) war es für mich ganz nett, aber...

mfg
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Benutzeravatar
Fennek
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 619
Registriert: 12. Feb 2016, 18:56

Re: Auf Exceltabelle (Objekt) in Powerpoint zugreifen

Beitragvon NordicStalker » 30. Mär 2017, 19:09

Klasse!
Ich werde mit dem Code weiter arbeiten.

Vielen Dank!
NordicStalker
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6
Registriert: 30. Mär 2017, 07:13


Zurück zu PowerPoint Forum (provisorisch)

Wer ist online?

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