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

Страницы: 1 2 След.
Как макросом скрыть и отобразить сразу несколько листов
 
Здравствуйте.
Помогите с решением.

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

Просто этих листов много, и надоело по одному их делать видимыми.
Как открыть файл 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

Размещение картинки по правую сторону от ячейки (в левую соседнюю ячейку)
 
Доброго дня всем.
Прошу помочь с макросом.

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

Например в ячейке M6 содержится слово "текст". Это значит, что в ячейку L6, которая располагается слева - впишется по высоте - картинка из таблицы X3:Y.
Приложил файл-пример.
Изменено: Serg.Vrn - 25.11.2023 15:37:12
Размещение на кнопке - ссылок на файлы и макросы
 
Здравствуйте, уважаемые специалисты.
Помогите с решением.

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

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

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

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

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

Есть простое логическое условие:
Код
=ЕСЛИ(D9=1;"Times New Roman";"Arial")

Как заставить текст ""Times New Roman" - писаться в аналогичном стиле шрифта, а текст "Arial" - также в своем стиле шрифта ?
(Или может не формулой, а какой-нибудь пользовательской функцией)
Команда ЧЗНАЧ - преображается в _xlfn.NUMBERVALUE и начинает считать неправильно
 
Доброе утро.
Подскажите что делать с формулой.

При открытии в экселе2013 - формула выглядит так:
Код
=ДАТА(ПРАВСИМВ(F5;4);ВПР(ЛЕВСИМВ(ПРАВСИМВ(F5;7);3);$Q$4:$R$15;2;0);ЕСЛИ(ЕОШ(ЧЗНАЧ(ПСТР(F5;2;1)))=ИСТИНА;ПСТР(F5;1;1);ПСТР(F5;1;2)))-ДАТА(ПРАВСИМВ($K$2;4);ВПР(ЛЕВСИМВ(ПРАВСИМВ($K$2;7);3);$Q$4:$R$15;2;0);ЕСЛИ(ЕОШ(ЧЗНАЧ(ПСТР($K$2;2;1)))=ИСТИНА;ПСТР($K$2;1;1);ПСТР($K$2;1;2)))
И считает правильно.

Но если тот же самый файл - открыть в более древней версии экселя, например excel2007 - то формула будет выглядеть так:
Код
=ДАТА(ПРАВСИМВ(F5;4);ВПР(ЛЕВСИМВ(ПРАВСИМВ(F5;7);3);$Q$4:$R$15;2;0);ЕСЛИ(ЕОШ(_xlfn.NUMBERVALUE(ПСТР(F5;2;1)))=ИСТИНА;ПСТР(F5;1;1);ПСТР(F5;1;2)))-ДАТА(ПРАВСИМВ($K$2;4);ВПР(ЛЕВСИМВ(ПРАВСИМВ($K$2;7);3);$Q$4:$R$15;2;0);ЕСЛИ(ЕОШ(_xlfn.NUMBERVALUE(ПСТР($K$2;2;1)))=ИСТИНА;ПСТР($K$2;1;1);ПСТР($K$2;1;2)))
И считать она будет уже неправильно.
В общем команда ЧЗНАЧ - преображается в нечто под названием "_xlfn.NUMBERVALUE"

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

В столбец E - текстом вписана дата
В ячейку L2 - текстом вписана сегодняшняя дата.

Как формулой - рассчитать - сколько осталось дней (в соответствии с текущей датой L2) - для каждой записи столбца E  и записать их в столбец F ?
Объединение данных двух листов. Добавить ячейки-разделители между двумя блоками данных
 
Доброй ночи.
Появился непростой вопрос.

У меня есть макрос, который на листе3 выполняет следующие операции:
-Берет данные из листа1 и размещает их с ячейки B2
-Берет данные из листа2 и накладывает их на первоначально добавленные данные.

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

Разделитель - это черная ячейка с указанием текущего года.
Примерно изобразил как выглядит этот разделитель -  на рисунке - на листе3.  
Добавление рамки с учетом размера рисунка
 
Доброй ночи.
Помогите с решением вопроса.

На листе находится рисунок.
В ячейку E4 - вписано - название картинки.

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

На Листе4 в столбце B - есть текст разной длины.
Рядом находится желтый столбец "T".
Видно, что кое-где текст значительно выходит за пределы этого столбца T.

Как перенести этот текст - на Лист5, со сжиманием текстового массива по ширине (до столбца T) и переносом невлезающего текста - на новую строку ?
Автоматический поиск текста из ячейки J3, вместо ввода искомого текста вручную
 
Доброй ночи, доблестные недремлющие программисты, сурово стоящие на посту.
Помогите....

Есть макрос поиска текста - в файлах эксель.
Работает он нормально.
Но чересчур громоздкий.

Как заставить макрос - не вбивать искомый текст вручную, а брать его из ячейки J3 ?
И как не выбирать папку вручную, спрашивая - нужен ли поиск в подпапках - а по-умолчанию выполнять поиск в той же папке - где этот файл и лежит (с учетом подпапок) ?
Код
Option Explicit

Dim FSO As Object, iFolder As Object, iFile As Object
Dim iPath As String, firstAddress As String, iPathName As String, Recursion As Boolean
Dim iSht As Worksheet, iReportSht As Worksheet, iTempWB As Workbook
Dim TextToFind As Variant, iFoundRng As Range, iLastRow As Long, FoundAny As Boolean

Sub ПоискВоВсехФайлахИПапках()
'Поиск текста во всех Excel файлах на всех листах в указанной папке
'10/10/2008; 07/04/2010

    Recursion = False: iPathName = "": FoundAny = False
    TextToFind = Application.InputBox("Введите текст для поиска:", "Поиск", "Текст для поиска")
    If TextToFind = "" Or TextToFind = False Then Exit Sub
    If TextToFind = "Текст для поиска" Then
        MsgBox "Вы не указали текст для поиска!", 48, "Ошибка"
        Exit Sub
    End If
    TextToFind = Trim(TextToFind)

    'для выбора папки для Excel 2000
    If Val(Application.Version) <= 9 Then
        Dim objShell As Object, objFolder As Object, objFolderItem As Object
        Set objShell = CreateObject("Shell.Application")
        Set objFolder = objShell.BrowseForFolder(0, "Выберите папку:", &H4000, "")
        On Error Resume Next
        Set objFolderItem = objFolder.Self
        On Error GoTo 0
        If objFolderItem Is Nothing Then Exit Sub
        iPath = objFolderItem.Path & Application.PathSeparator
        Set objShell = Nothing: Set objFolder = Nothing: Set objFolderItem = Nothing
    Else
        'для выбора папки Excel 2003 и выше
        Dim FD As FileDialog
        Set FD = Application.FileDialog(msoFileDialogFolderPicker)
        With FD
            .AllowMultiSelect = False
            .Title = "Укажите нужную директорию"
            .ButtonName = "Выбрать папку"
            If .Show = False Then Exit Sub Else iPath = .SelectedItems(1) & Application.PathSeparator
        End With
        Set FD = Nothing
    End If

    If MsgBox("Просматривать вложенные папки?", vbQuestion + vbYesNo, "Рекурсия") = vbYes Then Recursion = True

    Set iReportSht = Workbooks.Add(xlWBATWorksheet).Worksheets(1)
    With iReportSht
        .Name = "Отчёт"
        With .Cells(1, 1)
            .Value = "Поиск текста: " & TextToFind
            .Font.Bold = True
        End With
    End With
    
    With Application
        .ScreenUpdating = False
        .Calculation = xlManual
        .StatusBar = "Идёт поиск..."
        .ShowWindowsInTaskbar = False
        .EnableEvents = False
        
        On Error GoTo ErrHandler:
        Set FSO = CreateObject("Scripting.FileSystemObject")
        ChooseFoldersSubfoldersFSO (iPath)
        Set iFolder = Nothing
        Set FSO = Nothing
        iReportSht.Cells(2, 1).Select
        
        .EnableEvents = True
        .StatusBar = False
        .ShowWindowsInTaskbar = True
        .Calculation = xlCalculationAutomatic
        .ScreenUpdating = True
    End With
    
    If FoundAny = False Then
        MsgBox "Текст '" & TextToFind & "' ни в одном из файлов в папке:" & Chr(10) & iPath & Chr(10) & " не был найден!", 48, "Отчёт"
        iReportSht.Parent.Close SaveChanges:=False
        Exit Sub
    End If
    MsgBox "Поиск завершён!", 64, "Поиск"
    Exit Sub

ErrHandler:
    If Err <> 0 Then MsgBox "Произошла ошибка: " & Err.Number & Chr(10) & Err.Description, 48, "Ошибка"
    With Application
        .StatusBar = False
        .ShowWindowsInTaskbar = True
        .Calculation = xlCalculationAutomatic
        .ScreenUpdating = True
    End With
End Sub

Function ChooseFoldersSubfoldersFSO(ByVal Papka As String)
    Set iFolder = FSO.GetFolder(Papka)
    For Each iFile In iFolder.Files
        If LCase(Right(iFile, 3)) = "xls" Then
            If iFile.Name <> ThisWorkbook.Name Then
                Set iTempWB = Workbooks.Open(Filename:=Papka & iFile.Name, UpdateLinks:=False, ReadOnly:=True)
                Application.StatusBar = "Поиск в: " & iTempWB.FullName
                For Each iSht In iTempWB.Sheets
                    If iSht.FilterMode = True Then iSht.ShowAllData
                    Set iFoundRng = iSht.Cells.Find(What:=TextToFind, LookIn:=xlFormulas, LookAt:=xlPart)
                    If Not iFoundRng Is Nothing Then
                        FoundAny = True
                        firstAddress = iFoundRng.Address
                        Do
                            With iReportSht
                                iLastRow = .UsedRange.Rows.Count + .UsedRange.Row
                                If iPathName <> Papka Then  'если новый файл
                                    iPathName = Papka
                                    With .Cells(iLastRow + 1, 1)
                                        .Value = "Директория: " & Papka
                                        .Font.Bold = True
                                        .Font.ColorIndex = 5
                                    End With
                                    With .Cells(iLastRow + 2, 1)
                                        .Value = "Книга: " & iTempWB.Name & ", Лист: " & iSht.Name
                                        .Font.Bold = True
                                    End With
                                Else
                                    With .Cells(iLastRow + 1, 1)
                                        .Value = "Книга: " & iTempWB.Name & ", Лист: " & iSht.Name
                                        .Font.Bold = True
                                    End With
                                End If
                                iFoundRng.EntireRow.Copy   'копируем всю строку
                                .Cells(.UsedRange.Rows.Count + .UsedRange.Row, "A").PasteSpecial xlPasteValues 'вставляем только значения
                            End With
                            Set iFoundRng = iSht.Cells.FindNext(iFoundRng)
                        Loop While iFoundRng.Address <> firstAddress
                    Else
                    End If
                Next
                Application.CutCopyMode = False
                iTempWB.Close SaveChanges:=False
            End If
        End If
    Next
    
    If Recursion Then 'рекурсия
        For Each iFolder In iFolder.SubFolders
            ChooseFoldersSubfoldersFSO iFolder.Path & Application.PathSeparator
        Next
    End If
End Function


Изменено: Serg.Vrn - 17.12.2017 00:29:06
Макрос поиска текста: ошибка "Run-time error '424' Object required"
 
Добрый день.
Помогите разобраться с макросом.

Макрос должен вроде бы искать конкретный текст - в файлах экселя.
Но он почему-то не работает.
Выдает ошибку "Run-time error '424' Object required"

Как заставить макрос работать ?
Макрос не работает - в сгруппированных автофигурах
 
Здравствуйте, специалисты.
Подскажите - что делать.

Есть макрос, назначающий (снимающий) макрос на определенную фигуру - при повторных щелчках на маленький кружок.
При этом этом меняется цвет большой фигуры.

Так вот - если фигуры не сгруппированы в Группу - макрос работает нормально.
Но вот если сгруппировать эти две автофигуры (Овал и Прямоугольник) - то макрос перестает работать.

Как заставить макрос работать - в сгруппированных автофигурах.
Поиск слова - по нескольким файлам экселя
 
Здравствуйте!
Ищу ответ на непростой вопрос.

В файле "ГЛАВНЫЙ ФАЙЛ.xls"  в ячейку - (D5) вписано слово.
В одной папке с Главным файлом - лежит несколько подпапок с документами экселя.
Пытался сам написать макрос, но что-то не работает - выдает ошибку.

Подскажите, как макросом осуществить поиск этого слова в документах экселя и вывести в столбец G5:G16 - названия тех файлов экселя, где это слово встречается хотя бы один раз ?
Сохранение диапазона в виде картинки - по заданным границам диапазона
 
Доброе утро мастера эксель, помогите решить проблему.

У меня имеется макрос сохранения  выделенного диапазона - как картинки Jpg - в каталог с книгой.
Однако у него есть недостаток - это выделение - нужно производить вручную.


Как заставить этот макрос - сохранить в формат jpg - ту область, которая входит в диапазон, заданный в ячейках С4 и D4  ?

(В ячейку С4 - вписана ячейка начала диапазона.
В ячейку D4 - вписана ячейка конца диапазона.)
Рисование пути между несколькими фигурами
 
Здравствуйте, уважаемые программисты.
Помогите решить проблему.

Есть макрос рисовании пути между фигурами Овал1 и Овал2, с обходом других фигур, стоящих на этом пути.
Рядом находится таблица O8:Q15, в которую вписаны - начальная фигура (от которой начинается рисование пути), конечная фигура (которой заканчивается рисование пути, и последний столбец - где 1 означает то, что путь рисуется (а если 0 - значит путь не рисуется).

Как заставить макрос - рисовать путь между фигурами - по этой таблице (а не только между фигурами Овал1 и Овал2) ?
Вывод в столбец названий файлов doc, где встречается определенное слово
 
Здравствуйте!
Ищу ответ на непростой вопрос.

В ячейку файла эксель (D5) вписано слово.
В одной папке с файлом - лежит несколько документов ворда.
Подскажите, как макросом осуществить поиск этого слова в документах ворда и вывести в столбец G5:G16 - названия тех файлов ворда, где это слово встречается хотя бы один раз ?
Изменено: Serg.Vrn - 03.10.2017 03:19:58
Увеличение-снижение громкости проигрываемого файла
 
Добрый день, специалисты по экселю.
Помогите решить непростой вопрос.

Есть простой макрос, проигрывающий мелодию.
Код
Private Declare Function mciExecute Lib "winmm.dll" (ByVal lpstrCommand As String) As Long

Sub Play1()
Call mciExecute("play ""C:\14\2.mp3"" repeat")
End Sub
Рядом находятся синяя и желтая кнопки.
Как макросом - при нажатии на синюю кнопку - плавно (за 3-4 секунды) снизить громкость проигрываемой мелодии - до нуля ?
И как макросом - при нажатии на желтую кнопку - плавно повысить громкость проигрываемой мелодии - до максимального 100% значения ?
Смена цвета автофигуры в зависимости от цвета ячейки
 
Добрый день, форумчане.
Подскажите с решением проблемы.

В файле экселя - находится несколько фигур-полилиний серого цвета.
Рядом находится таблица (в диапазоне AB6:AC36) - с названиями автофигур и ячейками с цветом Условного Форматирования.

Как макросом - заставить автофигуры с названиями вписанными в столбец AB - принять цвет, который имеет соответствующая ячейка с условным форматом - в столбце AC ?

То есть макрос в первой строчке таблицы - находит название автофигуры "Полилиния 14", ищет фигуру с указанным названием на листе и присваивает ей цвет, который имеет - условное форматирование в ячейке напротив (в данном случае желтый). Затем повторяет операцию для следующей строчки.
(Главное, чтобы макрос мог распознать цвет условного форматирования сам, поскольку я могу вручную менять этот цвет в будущем.)
Копирование VBA - с сохранением содержимого буфера обмена.
 
Добрый вечер, уважаемые программисты.
Помогите решить непростую техническую проблему.

В файле xls находится макрос копирования содержимого одних ячеек - в другие ячейки.
Если скопировать в буфер обмена Автофигуру (например синий прямоугольник) - и нажать на кнопку макроса, то после окончания работы макроса - буфер обмена будет пуст.

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

На листе находится картинка.
Как заставить эту картинку - при щелчке на кнопку - плавно исчезнуть, а про щелчке по другой кнопке - плавно появиться ?

То есть я имею ввиду - плавное изменение прозрачности - до уровня полной невидимости, а затем наоборот - появление.
Отмечание каждой третьей строки диапазона
 
Здравствуйте, уважаемые участники форума.
Помогите найти ответ на вопрос.

У меня на листе есть зеленый столбец-диапазон C7:C15.
Я пытаюсь решить задачу - нумерации каждой третьей строки (диапазона D7 : D15)- начиная от начала диапазона.

Однако есть условие - ссылка в формуле диапазона D7 : D15 - должна идти только на ту же самую строку, только в столбце C. (Исключение - адрес ячейки  C7)

Я сейчас придумал только формулу типа
=ЕСЛИ(--ЕЧИСЛО(C7 ДВССЫЛ("C7"));1;ЕСЛИ(И(D4=1;D5=0;D6=0);1;0))
Но эта формула, как можно видеть - использует не только значение той же строки (C7), но еще и значения из своего столбца D (D4,D5,D6). Так что по условиям - мой вариант не подходит.

Как формулой в столбце D7 : D15 - пронумеровать каждую третью строку данного диапазона, используя только данные соответствующих строк диапазона  C7:C15 ?

Возможно применить такое решение: Анализировать адрес каждой ячейки диапазона столбца D, сравнивать его с первым адресом диапазона - "C7", найти числовую разницу между адресами их строк - и поделить их на три.
По тому - делится ли число на 3 без остатка или нет - можно для каждой ячейки диапазона C7:C15 выставлять - либо 0 либо 1.

Но вот как это реализовать формулой - уровня моих знаний не хватает.
Изменено: Serg.Vrn - 17.05.2017 23:27:03
Вставка гиперссылок по зигзагообразной схеме.
 
Доброе утро форумчане.
Помогите советом.

У меня есть макрос вставки гиперссылок на файлы - рядом со столбцом.
Макрос расставляет гиперссылки - в зависимости от названия файла.
Единственный для меня минус - вставляет он их - горизонтально, заполняя несколько ячеек одной строки (то есть некомпактно).

Как заставить макрос заполнять ячейки по "зигзагообразной" схеме ?
То есть заполняет сперва первые три ячейке в строке, затем вторую строку так же и если что-то останется - расставляет оставшиеся гиперссылки на третью строку
(всего файлов и гиперссылок на них не будет больше 9)
Код
Sub Gyper()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Dim katal, lLastRow, Data(), FILE_Real(), Data_Real(), sch, str_pch As Variant, col, cc As Boolean
Dim ii, jj, kk As Long
    katal = GetFolderPath("Óêàæèòå êàòàëîã ñ ôàéëàìè", ThisWorkbook.Path)
    If katal <> "" Then
       lLastRow = Cells(Rows.Count, 1).End(xlUp).Row
       ReDim Data(lLastRow, 1)
       If lLastRow = 1 Then
          Data(1, 1) = Cells(1, 1)
       Else
          Data = Range(Cells(1, 1), Cells(1 + lLastRow - 1, 1))
       End If
       Dim FS As Object, KATALOG As Object, FILE As Object, MASSIV As Object
       Set FS = CreateObject("Scripting.FileSystemObject")
       Set KATALOG = FS.GetFolder(katal)
       Set MASSIV = KATALOG.Files
           sch = 0
           For Each FILE In MASSIV
               sch = sch + 1
           Next
       ReDim FILE_Real(sch), Data_Real(sch)
       ii = 1
       For Each FILE In MASSIV
           Data_Real(ii) = Mid(Dir(FILE), Len(Dir(FILE)) - 14, 11)
           FILE_Real(ii) = FILE
           ii = ii + 1
       Next
            str_pch = 1
           For ii = 1 To lLastRow
               col = 2: cc = False
               For jj = 1 To sch
                    If Trim(Data(ii, 1)) = Trim(Data_Real(jj)) Then
                        With ActiveSheet
                            .Cells(ii, col).Clear
                            .Hyperlinks.Add .Cells(ii, col), FILE_Real(jj)
                        End With
                        col = col + 1
                      If cc = False Then str_pch = str_pch + 1: cc = True
                   End If
               Next
           Next
    Columns("A:B").Columns.AutoFit
    Application.ScreenUpdating = True
    Application.DisplayAlerts = True
        MsgBox "Ãîòîâî"
    Else
        MsgBox "êàòàëîã íå âûáðàí"
    End If
End Sub

Function GetFolderPath(Optional ByVal Title As String = "Âûáåðèòå ïàïêó", _
                       Optional ByVal InitialPath As String = "c:\") As String
    Dim PS As String: PS = Application.PathSeparator
    With Application.FileDialog(msoFileDialogFolderPicker)
        If Not Right$(InitialPath, 1) = PS Then InitialPath = InitialPath & PS
        .ButtonName = "Âûáðàòü": .Title = Title: .InitialFileName = InitialPath
        If .Show <> -1 Then Exit Function
        GetFolderPath = .SelectedItems(1)
Вставка адреса диапазона в макрос - из текста в ячейке.
 
Добрый вечер. Помогите исправить макрос.

Записал рекодером макрос - копирующий один диапазон в другой.
Код
Sub Макрос2()
    Range("B7:C9").Select
    Selection.Copy
    Range("H5:I7").Select
    ActiveSheet.Paste
    Range("B11").Select
End Sub
Как заставить Range("B7:C9") и Range("H5:I7") - брать диапазоны из ячеек D2 и E2 ?
(Сейчас в  ячейки D2 и E2 - эти диапазоны вписаны в виде текста.)
Перенос содержимого диапазона макросом.
 
Здравствуйте. Помогите разобраться.

На листе находятся три диапазона D4:G10 , I4:L10 ,  N4:Q10   - которые расположены по убыванию значения в числовых ячейках F4 ,K4 ,P4.
В этих диапазонах - находятся : текст, автофигура, форматированная ячейка,картинка, формула, синяя ячейка с числовым номером.
Но если значения в ячейках F4 ,K4 ,P4 изменятся - в сторону нарушения "очередности убывания" - то и диапазоны должны "перетасоваться".

Например - если ввести в числовую ячейку P4 - число15, то соответственно это будет означать, что значение ячейки P4 - теперь самое большое из всех ячеек и диапазон N4:Q10 должен перенестись в крайнее левое положение, а диапазоны D4:G10 , I4:L10 соответственно сдвинутся влево.

Как это можно сделать макросом?
Как отключить предупреждение при переходе по гиперссылке на файл
 
Доброго времени.
Помогите советом.

На листе моего файла находится гиперссылка на экзешный файл.
Но при переходе по ссылке постоянно появляется надоедающее сообщение "некоторые файлы могут содержать вирусы или другое опасное содержимое..."

Нашел в интернете статью, где на английском языке объясняется как это можно сделать.
https://support.microsoft.com/ru-ru/help/925757/how-to-enable-or-disable-hyperlink-warning-messages-...
Но там все на английском - ничего не понятно.
В нужный каталог реестра я зашел, а что дальше делать - неясно совершенно, поскольку у меня ОС - русскоязычная... а все параметры приведенные в статье английские.
Нет ли какой-нибудь инструкции на русском языке - как отключить это оповещение при открытии гиперссылок?
Или может это как-то макросом можно сделать?
Изменено: Serg.Vrn - 19.01.2017 01:34:56
Расстановка гиперссылок на файлы в столбцах - в соответствии с Датой в их названии
 
Доброго вечера всем. Помогите разобраться с проблемой.

Есть большое количество мелких файлов (самых разных форматов). Я их кидаю в одну папку.
У этих файлов - обязательно в названии файлов - есть дата когда были созданы эти файлы.

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

В файле - на листе находится столбец в котором кое-где стоят числа.  Как заставить формулу - определить - какая из заполненных ячеек (с числом большим 0) - является самой нижней. И отобразить адрес этой "нижней" ячейки.   Прилагаю файл с приблизительным примером.
Изменено: Serg.Vrn - 11.01.2017 12:25:16
Страницы: 1 2 След.
Наверх