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

Вход

Регистрация

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

 

= Мир MS Excel/макрос на влияющие, зависимые ячейки - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
макрос на влияющие, зависимые ячейки
Flatcher Дата: Четверг, 21.05.2015, 19:49 | Сообщение № 1
Группа: Проверенные
Ранг: Участник
Сообщений: 94
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Подскажите пожалуйста как редактировать макрос таким образом, чтобы он показывал влияющие ячейки только с других листов (например на листе 1 есть формула =СУММ(A1; Лист2!B1) - хотелось бы увидеть ссылку только влияющую ячейку с листа 2
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.ClearArrows
Target.ShowDependents
Target.ShowPrecedents
End Sub
[/vba]


Сообщение отредактировал Flatcher - Четверг, 21.05.2015, 21:12
 
Ответить
СообщениеПодскажите пожалуйста как редактировать макрос таким образом, чтобы он показывал влияющие ячейки только с других листов (например на листе 1 есть формула =СУММ(A1; Лист2!B1) - хотелось бы увидеть ссылку только влияющую ячейку с листа 2
[vba]
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
ActiveSheet.ClearArrows
Target.ShowDependents
Target.ShowPrecedents
End Sub
[/vba]

Автор - Flatcher
Дата добавления - 21.05.2015 в 19:49
Karataev Дата: Суббота, 20.06.2015, 19:16 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

Excel
в вашем примере формула ссылается на две ячейки.
если в excel щелкнуть *Влияющие ячейки*,то появится две стрелки. Вы хотите,чтобы отображалась только одна стрелка? Но ведь такое нельзя сделать и в самом excel.
или я вас неправильно понял?
 
Ответить
Сообщениев вашем примере формула ссылается на две ячейки.
если в excel щелкнуть *Влияющие ячейки*,то появится две стрелки. Вы хотите,чтобы отображалась только одна стрелка? Но ведь такое нельзя сделать и в самом excel.
или я вас неправильно понял?

Автор - Karataev
Дата добавления - 20.06.2015 в 19:16
kotlovan Дата: Среда, 31.05.2023, 17:21 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 30
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Flatcher, наверно уже неактуально, но если кому пригодиться то для влияющих ячеек вот так:
[vba]
Код

Sub ВыделениеСсылокНаДругиеЛисты()
Dim x As Long, y As Long, rngDip As Range, strList As String
'Set rngDip = Application.InputBox(prompt:="Укажите диапазон", Type:=8)
Set rngDip = Range("A1", Range("A1").SpecialCells(xlLastCell))
Application.ScreenUpdating = False
For x = 1 To rngDip.Rows.Count
    For y = 1 To rngDip.Columns.Count
        strList = ActiveSheet.Cells(x, y).Formula
        If InStr(strList, "!") > 0 Then
             If strList = "#ДЕЛ/0!" Or strList = "#DIV/0!" Then
             Else
                If ActiveSheet.Cells(x, y).Comment Is Nothing Then
                    ActiveSheet.Cells(x, y).AddComment.Text strList
                Else
                    ActiveSheet.Cells(x, y).Comment.Text strList & vbNewLine _
                    , 1, False
                End If
                With ActiveSheet.Cells(x, y)
                    .Font.Bold = True
                    .Value = ActiveSheet.Cells(x, y).Value
                    .Interior.Color = RGB(96, 73, 123)
                    .Font.Color = RGB(255, 255, 255)
                    .Comment.Visible = False
                    .Comment.Shape.DrawingObject.Font.Italic = True
                    .Comment.Shape.DrawingObject.Font.Bold = False
                End With
            End If
        End If
    Next y
Next x
Application.ScreenUpdating = True
MsgBox "Проверка связей выполнена."
End Sub
[code]
[/vba]


Сообщение отредактировал kotlovan - Среда, 31.05.2023, 17:22
 
Ответить
СообщениеFlatcher, наверно уже неактуально, но если кому пригодиться то для влияющих ячеек вот так:
[vba]
Код

Sub ВыделениеСсылокНаДругиеЛисты()
Dim x As Long, y As Long, rngDip As Range, strList As String
'Set rngDip = Application.InputBox(prompt:="Укажите диапазон", Type:=8)
Set rngDip = Range("A1", Range("A1").SpecialCells(xlLastCell))
Application.ScreenUpdating = False
For x = 1 To rngDip.Rows.Count
    For y = 1 To rngDip.Columns.Count
        strList = ActiveSheet.Cells(x, y).Formula
        If InStr(strList, "!") > 0 Then
             If strList = "#ДЕЛ/0!" Or strList = "#DIV/0!" Then
             Else
                If ActiveSheet.Cells(x, y).Comment Is Nothing Then
                    ActiveSheet.Cells(x, y).AddComment.Text strList
                Else
                    ActiveSheet.Cells(x, y).Comment.Text strList & vbNewLine _
                    , 1, False
                End If
                With ActiveSheet.Cells(x, y)
                    .Font.Bold = True
                    .Value = ActiveSheet.Cells(x, y).Value
                    .Interior.Color = RGB(96, 73, 123)
                    .Font.Color = RGB(255, 255, 255)
                    .Comment.Visible = False
                    .Comment.Shape.DrawingObject.Font.Italic = True
                    .Comment.Shape.DrawingObject.Font.Bold = False
                End With
            End If
        End If
    Next y
Next x
Application.ScreenUpdating = True
MsgBox "Проверка связей выполнена."
End Sub
[code]
[/vba]

Автор - kotlovan
Дата добавления - 31.05.2023 в 17:21
  • Страница 1 из 1
  • 1
Поиск:

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