Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Назначение картинке гиперссылки - по ближайшей ячейке - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Назначение картинке гиперссылки - по ближайшей ячейке (Макросы/Sub)
Назначение картинке гиперссылки - по ближайшей ячейке
mv6677 Дата: Пятница, 05.01.2018, 22:48 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 3 ±
Замечаний: 0% ±

Excel 2013
Здравствуйте. Помогите написать макрос.
Есть макрос, который работает как гиперссылка - открывает конкретный сторонний файл. Можно прицепить этот макрос - к определенной картинке.

Сейчас в моем файле - назначение гиперссылки выглядит так:
[vba]
Код

Function fOpenFile(sFPath As String) As Boolean
    On Error Resume Next
    fOpenFile = ShellExecute(0&, "Open", sFPath, _
                        vbNullString, vbNullString, 1&) > 32
End Function

Sub Макрос_1()
If Not fOpenFile(Range("F5")) Then
    MsgBox "не удалось открыть файл!"
End If
End Sub
[/vba]
Но этот макрос действует только на одну картинку, а на другую картинку нужно писать уже другой макрос.

Как заставить макрос открывать файл по адресу - не конкретной ячейки, а по адресу ближайшей заполненной ячейки которая находится ближе всех к центру картинки той картинки, по которой осуществляется щелчок ?
Чтобы можно один макрос - назначить всем картинкам разом.
К сообщению приложен файл: 1-.xlsm(68.0 Kb)


Сообщение отредактировал mv6677 - Пятница, 05.01.2018, 22:49
 
Ответить
СообщениеЗдравствуйте. Помогите написать макрос.
Есть макрос, который работает как гиперссылка - открывает конкретный сторонний файл. Можно прицепить этот макрос - к определенной картинке.

Сейчас в моем файле - назначение гиперссылки выглядит так:
[vba]
Код

Function fOpenFile(sFPath As String) As Boolean
    On Error Resume Next
    fOpenFile = ShellExecute(0&, "Open", sFPath, _
                        vbNullString, vbNullString, 1&) > 32
End Function

Sub Макрос_1()
If Not fOpenFile(Range("F5")) Then
    MsgBox "не удалось открыть файл!"
End If
End Sub
[/vba]
Но этот макрос действует только на одну картинку, а на другую картинку нужно писать уже другой макрос.

Как заставить макрос открывать файл по адресу - не конкретной ячейки, а по адресу ближайшей заполненной ячейки которая находится ближе всех к центру картинки той картинки, по которой осуществляется щелчок ?
Чтобы можно один макрос - назначить всем картинкам разом.

Автор - mv6677
Дата добавления - 05.01.2018 в 22:48
alex77755 Дата: Суббота, 06.01.2018, 04:00 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 361
Репутация: 64 ±
Замечаний: 0% ±

[vba]
Код
Sub Макрос()
    Dim i, j, r, c, s
    Set s = ActiveSheet.Shapes(Application.Caller)
    r = s.TopLeftCell.Row
    c = s.TopLeftCell.Column
        For i = 1 To 10
            For j = 0 To 10
                If Len(Cells(r + i, c + j)) > 0 Then
                    MsgBox Cells(r + i, c + j).Value
                    Exit Sub
                End If
            Next j
        Next i
End Sub
[/vba]
Цитата
Чтобы можно один макрос - назначить всем картинкам разом.

лучше картинки загрузить в массив


Могу помочь в VB6, VBA
Alex77755@mail.ru
 
Ответить
Сообщение[vba]
Код
Sub Макрос()
    Dim i, j, r, c, s
    Set s = ActiveSheet.Shapes(Application.Caller)
    r = s.TopLeftCell.Row
    c = s.TopLeftCell.Column
        For i = 1 To 10
            For j = 0 To 10
                If Len(Cells(r + i, c + j)) > 0 Then
                    MsgBox Cells(r + i, c + j).Value
                    Exit Sub
                End If
            Next j
        Next i
End Sub
[/vba]
Цитата
Чтобы можно один макрос - назначить всем картинкам разом.

лучше картинки загрузить в массив

Автор - alex77755
Дата добавления - 06.01.2018 в 04:00
mv6677 Дата: Суббота, 06.01.2018, 17:00 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 3 ±
Замечаний: 0% ±

Excel 2013
alex77755, понял подсказочку.
Спасибо.
 
Ответить
Сообщениеalex77755, понял подсказочку.
Спасибо.

Автор - mv6677
Дата добавления - 06.01.2018 в 17:00
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Назначение картинке гиперссылки - по ближайшей ячейке (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2018 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!