Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 3 4 След.
Как макросом скрыть и отобразить сразу несколько листов
 
Всем спасибо за ответы.
Теперь все работает.
Как макросом скрыть и отобразить сразу несколько листов
 
evgeniygeo, тут тоже почему-то выделяет Лист2.
и не скрывает листы при повторном нажатии.
Как макросом скрыть и отобразить сразу несколько листов
 
МатросНаЗебре, спасибо.
А зачем макрос выделяет Лист2 в конце своей работы.
Это можно как-то убрать ?
Как макросом скрыть и отобразить сразу несколько листов
 
Здравствуйте.
Помогите с решением.

На листе множество - скрытых листов (у которых в ячейку  B1 - вписан текст "скрытый" )
Как макросом - щелчком по кнопке - заставить их все разом отобразиться (а если еще раз щелкнуть - то они опять скроются) ?

Просто этих листов много, и надоело по одному их делать видимыми.
Как открыть файл xlsb только для чтения, чтобы он при закрытии не спрашивал - сохранять его или нет, чтобы не запускал никаких макросов в нем
 
Цитата
написал:
Как открыть файл  xlsb только для чтения, чтобы он при закрытии не спрашивал - сохранять его или нет, чтобы не запускал никаких макросов в нем ?
Я сразу в сообщении специально написал - файл какого расширения меня интересует.
Про другие расширения я ничего не спрашивал.
Как открыть файл xlsb только для чтения, чтобы он при закрытии не спрашивал - сохранять его или нет, чтобы не запускал никаких макросов в нем
 
Sanim, нет, расширение файла xlsb , а не xls - и переименовывать его нельзя - а то тормозить будет.
Как открыть файл xlsb только для чтения, чтобы он при закрытии не спрашивал - сохранять его или нет, чтобы не запускал никаких макросов в нем
 
Здравствуйте.
Помогите.

Как открыть файл  xlsb только для чтения, чтобы он при закрытии не спрашивал - сохранять его или нет, чтобы не запускал никаких макросов в нем ?
(просто открыть и закрыть)
Размещение иконок не по левую сторону от ячейки, а в самой ячейке.
 
Добрый день.
Помогите поправить макрос.

Макрос расставляет иконки по таблице F42:J50, ориентируясь на то значение которое вписано в каждую конкретную ячейку этой таблицы.
Вместо того, чтобы расставить одну иконку в одну ячейку по точному совпадению (со словами прописанными в столбце X4:X), макрос расставляет по куче иконок в каждой ячейке таблицы F42:J50, где есть хотя бы одно совпадение  с ключевыми словами из X4:X , нагромождая иконки друг на друга.
Это касается только тех ячеек, где стоят числовые значения.

Как поправить макрос, чтобы исчезло это нагромождение - и расставлялась бы одна иконка на одну ячейку - по точному совпадению ?

Вот сам код и файл-пример:
Код
Option Explicit
Dim sl

Sub Макрос1()

    Dim r, lr, m, k, pat, i, f
    Dim myPic As Shape
    Dim fso As Object
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set sl = CreateObject("Scripting.Dictionary")
    pat = ActiveWorkbook.Path
    Search fso.GetFolder(pat)
    k = sl.keys
    With ActiveSheet
        lr = Cells(Rows.Count, 25).End(xlUp).Row
        m = .Cells(4, 24).Resize(lr - 3, 2).Value
        Dim rw&, co&
        For rw = 42 To 51 Step 3
        For co = 6 To 10 Step 1
        For r = 1 To UBound(m)
            If InStr(Cells(rw, co), m(r, 1)) > 0 Then
                For i = 0 To UBound(k)
                    If InStr(1, k(i), m(r, 2), vbTextCompare) > 0 Then
                        pat = sl(k(i))
                        With .Cells(rw, co)
                            Set myPic = ActiveSheet.Shapes.AddPicture( _
                                Filename:=pat, _
                                linktofile:=msoFalse, _
                                savewithdocument:=msoCTrue, _
                                Left:=.Offset(0, 0).Left + 1, _
                                Top:=.Offset(0, -1).Top + 1, _
                                Width:=.Offset(0, -1).Width - 2, _
                                Height:=.Offset(0, -1).Height * 3 - 2)
                            myPic.LockAspectRatio = msoFalse
                        End With
                    End If
                Next i
            End If
        Next r
        Next co
        Next rw
    End With
End Sub

 Function Search(Fold As Object)
 Dim SubFold As Object, Fil As Object

   For Each SubFold In Fold.SubFolders
     Search SubFold
   Next SubFold
   For Each Fil In Fold.Files
        If InStr(1, Fil.Name, ".png", vbTextCompare) > 0 Then
        sl(Fil.Name) = Fil.Path
        End If
   Next Fil
End Function

Размещение картинки по правую сторону от ячейки (в левую соседнюю ячейку)
 
Всем спасибо за ответы
Размещение картинки по правую сторону от ячейки (в левую соседнюю ячейку)
 
Александр Моторин, спасибо.
Изменено: Serg.Vrn - 26.11.2023 11:56:11
Размещение картинки по правую сторону от ячейки (в левую соседнюю ячейку)
 
Помогите с макросом
Размещение картинки по правую сторону от ячейки (в левую соседнюю ячейку)
 
Доброго дня всем.
Прошу помочь с макросом.

Имеется таблица с разнообразным текстом.
Есть таблица X3:Y, где картинки заданы не адресом, а словом (которое встречается в названии файла).
Сами картинки лежат в папке "картинки" рядом с книгой.
Как по этой таблице X3:Y - расставить картинки в таблице  F6:Q38 ?

Например в ячейке M6 содержится слово "текст". Это значит, что в ячейку L6, которая располагается слева - впишется по высоте - картинка из таблицы X3:Y.
Приложил файл-пример.
Изменено: Serg.Vrn - 25.11.2023 15:37:12
Размещение на кнопке - ссылок на файлы и макросы
 
Sanja, спасибо.
Размещение на кнопке - ссылок на файлы и макросы
 
Цитата
написал:
А еще лучше опишите ЗАДАЧУ, которую решаете, а не СПОСОБ, которым пытаетесь ее решить
Задача звучит так:
Цитата
написал:
Как навесить на кнопку - не один экзешник, а несколько экзешников и несколько макросов ?
Вот это и есть задача.
Чтобы по щелчку по кнопке - запускался не один экзешник, а несколько определенных экзешников и макросов.
Размещение на кнопке - ссылок на файлы и макросы
 
Sanja, спасибо.
Но это по-прежнему - все то же самое.

Нужно не один столбец какой-то выбрать, а назначить - все столбцы - для одной кнопки.
Изменено: Serg.Vrn - 18.11.2023 05:41:39
Размещение на кнопке - ссылок на файлы и макросы
 
Цитата
написал:
А по нажатию на фигуру что выполнять? Какой exe из списка? Какой макрос?
В смысле "какой макрос" ?
Там сейчас действует вот этот макрос, который назначается на все фигуры:
Код
Sub SetMakro()
Dim iShape As Shape
For Each iShape In Worksheets("Лист2").Shapes
On Error Resume Next
  If iShape.DrawingObject.Caption <> "Назначить кнопки" Then
    iShape.OnAction = "RunEXE"
  End If
Next
End Sub

Private Sub RunEXE()
Dim iShape As Shape
Dim iEXE$
On Error Resume Next
Set iShape = Worksheets("Лист2").Shapes(Application.Caller)
If Not iShape Is Nothing Then
  With Worksheets("Лист2")
    iEXE = Application.WorksheetFunction.VLookup(iShape.DrawingObject.Caption, .Range("AC5:AD" & .Cells(.Rows.Count, "AC").End(xlUp).Row), 2, 0)
  End With
  If Not IsEmpty(iEXE) Then
    Shell iEXE, vbNormalFocus
  End If
End If
End Sub

При нажатии на любую фигуру - он и выполняется.
Вопрос только в том - какой именно экзешник назначен тексту внутри этой фигуры.
Экзешник назначается по таблице. Но сейчас можно назначить только один экзешник на одну фигуру.

Мой вопрос заключается в том - как на одну фигуру, назначить большее количество экзешников и отдельные макросы.
То есть таблица, по которой это назначение идет - будет не один столбец AD5:AD, а большее количество столбцов AD5:AH
Размещение на кнопке - ссылок на файлы и макросы
 
Здравствуйте, уважаемые специалисты.
Помогите с решением.

Имеется макрос, который назначает шейпам на листе - макрос, по которому открываются экзешники, записанные в таблицу AC5:AD

Как по тому же принципу навесить на кнопку - не один экзешник, а несколько экзешников и несколько макросов ?
Их адреса и названия размещены в таблице AE5:AH
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
Sanja, спасибо
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
testuser, спасибо.
Тут все сделано - так как нужно.
Черная кнопка - ищет нужные фигуры и расставляет макросы по ним.
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
Sanja, спасибо. Но здесь - опять не работает черная кнопка.
Именно черной кнопкой нужно назначить макросы - на все остальные кнопки (внутри которых есть текст из таблицы).

(а не вручную к каждой нужной фигуре прикреплять макрос. Потому что фигур очень много и они стоят не в одном месте листа. И среди этого множества фигур лишь некоторые имеют тот вписанный текст, который встречается в таблице U12:V )
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
Sanja, вот мой вопрос:
Цитата
написал:
На листе находятся несколько фигур.В некоторых из них - есть вписанный текст. Рядом находится таблица, где каждому тексту - назначен какой-то свой экзешник. Как назначить этим фигурам макрос открытия своего экзешника, который назначен для каждого конкретного вписанного слова (в таблице U12:V)  ?
Цитата
написал:
То есть там не вручную нужно назначить макросы фигурам (потому что фигур очень много), а автоматически. И только тем фигурам у кого внутрь шейпа - вписан соответствующий текст.
Назначить макрос фигурам - это не вручную назначить (щелкая по каждой фигуре и назначая ей что-то), а автоматически макросом назначить.

Цитата
написал:
Там, заодно, и увидите 'сокращенные' названия
Так зачем нужны сокращенные названия в макросе ?
Там же в таблице данные постоянно меняются ?
Я же написал, что из таблицы адреса экзешников нужно брать, а не записывать их в макрос самостоятельно.
("Рядом находится таблица, где каждому тексту - назначен какой-то свой экзешник.")
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
asesja, не работает.
Добавил в таблицу новый адрес экзешника - макрос его не видит.

И непонятно откуда в макросе - сокращенные названия экзешников:                    
shp.OnAction = "inotepad"
shp.OnAction = "icalc"
shp.OnAction = "imspaint"

Я спрашивал - как из таблицы адреса экзешников взять, а не вручную вводить каждый адрес в макрос.
Адресов - очень много и они постоянно меняются.
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
Как его поправить ?
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
Sanja,  спасибо. Но не работает почему-то.
Макрос на черной кнопке - не назначает фигурам макросы.

То есть там не вручную нужно назначить макросы фигурам (потому что фигур очень много), а автоматически. И только тем фигурам у кого внутрь шейпа - вписан соответствующий текст.

Вот этот имеющийся код - он основан на именах самих шейпов.
Код
Sub pr()
    a = Range("B4").CurrentRegion.Value
    For i = 1 To UBound(a)
        ActiveSheet.Shapes(a(i, 1)).OnAction = a(i, 2)
    Next
End Sub
Но у меня тут будут не названия шейпов, а все шейпы на листе что есть - и из них надо выбрать только те, в названии которых есть текст из столбца.

Как этот макрос поменять ?
Пытался вот так сделать - не работает.
Код
Sub pr2()
    a = Range("U13").CurrentRegion.Value
    For i = 1 To UBound(a)
        ActiveSheet.Shapes.TextFrame2.TextRange.Characters.Text(a(i, 1)).OnAction = "RunEXE"
    Next
End Sub
Изменено: Serg.Vrn - 13.11.2023 17:18:20
Как назначить фигурам с определенным текстом - макрос открытия своего экзешника по таблице
 
Здравствуйте.
Помогите мне решить одну задачу.

На листе находятся несколько фигур.
В некоторых из них - есть вписанный текст. Рядом находится таблица, где каждому тексту - назначен какой-то свой экзешник.
Как назначить этим фигурам макрос открытия своего экзешника, который назначен для каждого конкретного вписанного слова (в таблице U12:V)  ?

(нужно, чтобы фигура с вписанным текстом - превратилась в кнопку, запускающую экзешник)

У меня есть похожий макрос, который умеет привязывать Макросы к фигурам в таблице - по названию этой фигуры (шейпа).
Может его как-то использовать.
Изменено: Serg.Vrn - 12.11.2023 23:17:02
Взаимноисключающие выпадающие списки
 
Logistic, а что ?
Цитата
випадающий список
Нормальное название, с этаким восточным колоритом.
Менять стиль шрифта по условию в ячейке
 
vikttur, все ясно.
Спасибо.
Менять стиль шрифта по условию в ячейке
 
vikttur, спасибо.

Но у меня нет изменения ячейки D9 вручную.
Значение ячейки D9 - просто меняется под действием других формул, на других листах.
Менять стиль шрифта по условию в ячейке
 
Вот файл пример.
Менять стиль шрифта по условию в ячейке
 
Подскажите - как пользовательской функцией в  ячейке G9 - менять стиль шрифта в зависимости от значения ячейки D9 ?

То есть - как заставить текст ""Times New Roman" - писаться в аналогичном стиле шрифта, а текст "Arial" - также в своем стиле шрифта ?

Имеется вот такой код, который сейчас не работает:
Код
Function Шрифт1(S)
 
    Dim rngTarget As Range
    Set rngTarget = Range("D9")
    ' - -
    Dim rngCell As Range
    ' - -
    For Each rngCell In rngTarget
        ' - -
        With rngCell
            ' - -
            If .Value = 1 Then
                .Font.Name = "Times New Roman"
            Else
                .Font.Name = "Arial"
            End If '.Value = 1
            ' - -
        End With 'rngCell
        ' - -
    Next rngCell
     
End Function
Страницы: 1 2 3 4 След.
Наверх