Vba И Power Point

Тема в разделе "Visual Basic", создана пользователем Vladislava-smile, 22 май 2014.

  1. Vladislava-smile

    Vladislava-smile New Member

    Регистрация:
    22 май 2014
    Сообщения:
    4
    Симпатии:
    0
    На слайде есть нарисованный овал, при запуске презентации он должен менять цвет заливки.

    Как менять цвет нашла
    Dim a As Shape
    Private Sub CommandButton2_Click()
    a = ActivePresentation.Slides(1).Shapes ("Oval 6").Select
    a.Fill.ForeColor.RGB = RGB(0, 255, 0)

    End Sub

    Но он ругается. Помогите, пожалуйста, что не так?Непонимающий

    если овал создавать тоже в коде в блоке кнопки, то все хорошо.
    Set b = ActivePresentation.Slides(1).Shapes .AddShape(msoShapeOval, 586.75, 150.88, 79.38, 79.38)
     
  2. Vladislava-smile

    Vladislava-smile New Member

    Регистрация:
    22 май 2014
    Сообщения:
    4
    Симпатии:
    0
    Вопрос решен.
     
  3. Vladislava-smile

    Vladislava-smile New Member

    Регистрация:
    22 май 2014
    Сообщения:
    4
    Симпатии:
    0
    А подскажите еще вопрос. Можно ли как и в Exel сделать автоматический запуск макросов при запуске презентации?
     
  4. Vladislava-smile

    Vladislava-smile New Member

    Регистрация:
    22 май 2014
    Сообщения:
    4
    Симпатии:
    0
    С овалами разобралась уже. Спасибо. Под запуском подразумевается показ слайдов.

    А можно ли в связке Power Point и VBA делать следующие вещи:
    В слайде презентации у нас есть 3 прямоугольника. Нужно, что бы при наведении или при щелчке на этот объект при просмотре презентации выдавалось сообщение о названии этого объекта и его индексе. Писать макрос на каждый объект и привязывать его через действие не вариант - таких объектов по всей презентации около 500 штук. Нашла только, чтобы выводился общий список.

    Sub Auto_open()

    Set sh = ActiveWindow.Selection.SlideRange.Shapes

    Im = ""

    For Each fr In sh

    Im = Im & fr.Name & vbCrLf

    Next

    MsgBox Im

    End Sub

    (( Я в тупике, помогите, пожалуйста.
     
  5. Vladislava-smile

    Vladislava-smile New Member

    Регистрация:
    22 май 2014
    Сообщения:
    4
    Симпатии:
    0
    Нашла блок
    Sub Shape3_Clicked()

    End Sub

    Только вот осталось понять как эту 3 на примере вытаскивать и записывать в переменную.
     
  6. Vladislava-smile

    Vladislava-smile New Member

    Регистрация:
    22 май 2014
    Сообщения:
    4
    Симпатии:
    0
    Sub identification(oShp As Shape)
    MsgBox oShp.Name, vbInformation + vbOKOnly
    Dim FullString As String
    Dim SearchString As String
    Dim SearchStringPos As Integer
    Dim ShapeNumber As Integer
    Dim ShapeNumberPos As Integer
    FullString = oShp.Name
    SearchString = " "
    SearchStringPos = InStr(1, FullString, SearchString)
    ShapeNumberPos = SearchStringPos + 1
    ShapeNumber = Mid(FullString, ShapeNumberPos)
    MsgBox (ShapeNumber)
    End Sub


    Работает.

    Добавлено: Остался только Auto_Open. Мысли есть?
     
Загрузка...

Поделиться этой страницей