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

Страницы: 1
Запуск IE свернутым в трей при открытии ячейки со ссылкой
 
Добрый день всем !

Как запускать IE свернутым в трей при открытии ячейки со ссылкой ??  (и потом открыть своим браузером - эта часть понятна)
Пробую так не получается все равно IE вылазит на экран
Код
Shell "C:\Program Files (x86)\Internet Explorer\iexplore.exe" & ActiveCell.Value, vbMinimizedFocus 'при 64 разр винде в 2-х местах сидит IE минимизируем окно открытия
Shell "C:\Program Files\Internet Explorer\iexplore.exe" & ActiveCell.Value, vbMinimizedFocus

Shell """" & ThisWorkbook.Path & "\OperaPortable\Opera.exe""" & ActiveCell.Value, vbNormalFocus 'открываем своим браузером

Как сминимизировать окно IE при открытии ссылки из активной ячейки ?
Так не получается - активизируем Microsoft Internet Controls в reference
Код
Dim IE As Object
Set IE = CreateObject("InternetExplorer.Application")
IE.Visible = False

Так тоже не получается
Код
Dim IE As New InternetExplorer
IE.Visible = False
Изменено: fix555 - 25.03.2017 17:26:29
Открытие заданной ссылки в браузере
 
Добрый вечер всем !

Вопрос специфичный - столкнулся с такой проблемой
Для открытия в портабельном браузере посредством макроса все получается в портабельных Chrom,Firefox,Opera в директории файла Excel
Код
operaPath = """" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe"""
Shell (operaPath & " -url https://google.com"), vbNormalFocus

1)Однако используя браузер K-Meleon (быстрый хороший) так не прокатывает
Код
KMeleonPath = """" & ThisWorkbook.Path & "\KMeleonPortable\k-meleon.exe"""
Shell (KMeleonPath & " -url https://google.com"), vbNormalFocus
Пишет "Некорректный адрес URL недействителен и не может быть загружен.Синтаксис указанного адреса некорректен. Проверьте адрес на наличие ошибок и попробуйте снова."

2)Если пробуем так без адреса все корректно браузер запускается с домашней страницей
Код
KMeleonPath = """" & ThisWorkbook.Path & "\KMeleonPortable\k-meleon.exe"""
Shell (KMeleonPath), vbNormalFocus

3) Если по простому
Код
Shell """" & ThisWorkbook.Path & "\KMeleonPortable\k-meleon.exe""" & "https://google.com"
так тоже не получается - вообще не видит google.com (другие браузеры на подобный код нормально все)

Почему так ? Как поправить синтаксис адресной строки для K-Meleon чтоб ошибок не было ?
Синтаксис здесь так написан http://kmeleonbrowser.org/wiki/Command+line+options?version=1

Open to a specific URL A URL
for example: "C:\Program Files\K-Meleon\k-meleon.exe" www.yahoo.com

Пробую явно прописать директорию - ошибки нет но требуемую страницу не открывает (просто открывается с домашней страницы) .При этом другие браузеры на основе Cromium нормально работают с этим кодом.
Код
X = Shell("""C:\KMeleonPortable\k-meleon.exe""" & """https://google.com""", vbNormalNoFocus)
Изменено: fix555 - 23.03.2017 23:07:37
Условие для диапазонов ячеек после автофильтра
 
Всем здравствуйте !
Столкнулся с проблемой как прописать условие для видимых ячеек после автофильтра в диапазонах 7 и 18 столбца (начиная с 4 отфильтрованной строки до последней заполненной отфильтрованной строки)

думаю что алгоритм такой
1)определить Range диапазонов где будут выполняться условия
2)применить свои условия к ячейкам этого Range только в видимом диапазоне (после автофильтра)
примерно так

но как задать требуемые условия для отфильтрованных ячеек не знаю (тк условие только для видимых ячеек)
Код
Dim Rng1 As Range, Rng2 As Range
'определяем диапазоны Rng1 и Rng2 для условий для видимых ячеек после автофильтра
'With ThisWorkbook.ActiveSheet.Range("A1:AH1000").SpecialCells(xlVisible)
'With ThisWorkbook.ActiveSheet.Range("A1:AH1000").SpecialCells(12)
With ThisWorkbook.ActiveSheet
        LastRow = .Cells(.Rows.Count, 1).End(xlUp).Row
        Set Rng1 = .Range(.Cells(4, 7), .Cells(LastRow, 7))
   Set Rng2 = .Range(.Cells(4, 18), .Cells(LastRow, 18))


If ActiveSheet.AutoFilter.Filters(7).On Or ActiveSheet.AutoFilter.Filters(18).On Then   'если автофильтр в 7 или 18 столбце включен
'и как прописать эти условия ??
If "Значения отфильтрованных ячеек в диапазоне Rng1 одинаковы" And "Значение отфильтрованных ячеек в диапазоне Rng1 = "Test"" 
And "Значения отфильтрованных ячеек в диапазоне Rng2 одинаковы" And "Значения отфильтрованных ячеек в диапазоне Rng2 > 0" Then
'Условие1
End If
If "Значения отфильтрованных ячеек в диапазоне Rng1 неодинаковы-несовпают" And "Значения отфильтрованных ячеек в диапазоне Rng2 неодинаковы-несовпают"  Then
'Условие2
End If

Else
Exit Sub

End With
Изменено: fix555 - 01.03.2017 22:36:06
Открыть гиперссылку в ячейке другим браузером (не браузером по умолчанию) в диапазоне
 
Добрый вечер всем !
Данная тема конечно подымалась на страницах форума но ответа для моего случая не нашел
На листе в диапазоне С4:C100 в ячейках гиперссылки
Их надо открывать только портабельным браузером Opera ("""" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""") - папка с портабельным браузером в директории файла
При этом есть InternetExplorer который открывает ссылки по умолчанию - его надо исключить (советы по смене браузера по умолчанию в данной ситуации не подходят)
Задаем чем открывать что открывать
Чем открывать  - ("""" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""") - папка с портабельным браузером
Что открывать - активную ячейку только в диапазоне  С4:C100 с гиперссылкой

1. Проблема1 -Вот так будет работать если явно задать www-адрес
вариации разные
1.1) x = Shell("""" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""" & """http://www.planetaexcel.ru""", vbNormalNoFocus)
1.2)operaPath = """" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe"""
Shell (operaPath & " -url http://www.planetaexcel.ru"), vbNormalFocus
1.3)Shell """" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""" & "http://www.planetaexcel.ru", vbNormalFocus
итого Проблема1 - будет открываться Opera которая явно задана  и одновременно  автоматом другой браузер по умолчанию (а нужно чтобы только Opera открывалась)

Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(ActiveCell, Range("C4:C100")) Is Nothing Then
If Target.Cells.Count > 1 Then Exit Sub 
x = Shell("""" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""" & """http://www.planetaexcel.ru""", vbNormalNoFocus)
'operaPath = """" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe"""
'Shell (operaPath & " -url http://www.planetaexcel.ru"), vbNormalFocus 
'Shell """" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""" & "http://www.planetaexcel.ru", vbNormalFocus
End If
Exit Sub

2.Проблема2 связанная  - видимо нужно ввести  myHyperlink.Address либо просто Hyperlink.Address либо ActiveCell.Text чтоб реагировало правильно на клик в ячейке
1.1) x = Shell("""" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""" & myHyperlink.Address, vbNormalNoFocus)
1.2)operaPath = """" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe"""
Shell (operaPath & " -url myHyperlink.Address"), vbNormalFocus
1.3)Shell """" & ThisWorkbook.Path & "\OperaPortable\OperaPortable.exe""" & myHyperlink.Address, vbNormalFocus

не получается так или Hyperlink.Address или его не использовать - сделать ActiveCell.Text ?

Как задать свой  браузер  чтоб открывался  только он по клику на активную ячейку с гиперссылкой(а браузер по умолчанию не открывался при этом)  и как ввести Hyperlink.Address правильно ?
Изменено: fix555 - 17.02.2017 18:51:08
Закрыть приложение из командной строки средствами VBA
 
Вечер добрый всем !
Нужно закрыть приложение по командной строке windows средствами VBA
Вроде простая задача но почему так трудно ....
Почему именно так - нужно закрыть браузер Chrom при открытии нескольких независимых окон - сделать так чтобы закрыть все окна Chrom и выйти из браузера
Что имеем штатными средствами чтобы так сделать:
1) ключами после ..... /Chrome.exe  - нет таких ключей что дебильно ключей  туча и такого нет (полный список ключей на http://peter.sh/experiments/chromium-command-line-switches/)
2)Горячие клавиши Выход         Ctrl + Shift + q (Выход)  и Ctrl + Shift + w (Закрыть все открытые вкладки и браузер)  (  (https://support.google.com/chrome/answer/157179?hl=ru)   путем Application.SendKeys ("^+(w)") и Application.SendKeys ("^+(q)") не работает в VBA при скрытии нескольких окон браузера в трей - окна неактивны получается и горячие клавиши не помогут

Есть путь к файлу chrome.exe    C:\Program Files (x86)\Chrome\Chrome.exe  и процесс в диспетчере задач windows
Остается убить процесс в диспетчере чтоб все окна закрылись и выйти из Chrome

Как это сделать средствами VBA макросом ?  Есть конечно Taskkill - завершение процесса из командной строки(http://sys-team-admin.ru/videouroki/administrirovanie/86-taskkill-zavershenie-protsessa-iz-komandnoj...)   или по этому пути Shell ("c:\windows\system32\cmd.exe /c dir > C:\Program Files (x86)\Chrome\Chrome.exe") но как это сделать макросом или проще есть методы ?
Так не работает к сожалению Shell ("c:\windows\system32\cmd.exe Taskkill /f /im chrome.exe") и так Shell ("c:\windows\system32\cmd.exe /c dir > Taskkill /f /im chrome.exe") не получается
Изменено: fix555 - 16.02.2017 22:36:11
Извлечь заданное количество цифр из текста
 
Добрый вечер всем !
Макрос вытаскивает из текста  цифры  и текст отдельно  но критерии немного другие нужно
Вытаскивать только цифры в конце текста:
Цифры в конце текста:
всегда начинаются с пробела
всегда в конце текста
количество от 6 до 20 цифр

Вытаскивать только текст:
текст это то что остается после вытаскивания последних цифр

Как прописать .Pattern в макросе  чтобы соответствовал этим критериям ?
Код
Function NumbersOnly(srcStr As String) As String
    Dim objRegEx As Object
    Set objRegEx = CreateObject("VBScript.RegExp")
    With objRegEx
        .Global = True
        .Pattern = "[^0-9,]" ' последние цифры нужны после [\s....] пробела
        NumbersOnly = .Replace(srcStr, vbNullString)
    End With
    Set objRegEx = Nothing
End Function
Function TextOnly(srcStr As String) As String
    Dim objRegEx As Object
    Set objRegEx = CreateObject("VBScript.RegExp")
    With objRegEx
        .Global = True
        .Pattern = "[0-9,]" ' все что осталось после [^....]
        TextOnly = .Replace(srcStr, vbNullString)
    End With
    Set objRegEx = Nothing
End Function
Sub TextDoCifr()
ActiveCell.Offset(0, 1).Value = TextOnly(ActiveCell.Text)
End Sub
Sub CifraRight()
ActiveCell.Offset(0, 2).Value = NumbersOnly(ActiveCell.Text)
End Sub
Copy paste с форматированием текста в ячейку
 
Тема поднималась ранее но ответа не нашел
Как ввести в стандартную процедуру Windows Copy/paste в активную книгу в ячейки листа форматирование вставляемого текста - размер шрифта цвет и прочее
те не по макросу а в стандартной процедуре Windows Copy/paste  (чтоб не плодить кнопки) по условию если открыта книга - практически нужно когда копируешь в поиске в свою таблицу данные с веб-страниц в ячейку листа собирая данные в поиске

Понятно что есть варианты - накопировал в ячейки - отформатировал лист    - но есть ли вариант сразу в процессе копирования форматировать текст в буфере обмена перед вставкой в ячейку ? Может функция какая есть
Пока варианты начала
Код
Private Declare PtrSafe Function EmptyClipboard Lib "user32" () As Long
Private Declare PtrSafe Function OpenClipboard Lib "user32" (ByVal hwnd As LongPtr) As Long
Private Declare PtrSafe Function CloseClipboard Lib "user32" () As Long

и далее как...
Изменено: fix555 - 10.02.2017 23:44:25
Как очистить куки кэш историю при открытии браузера
 
Добрый вечер всем !
Возникла необходимость при открытии Chrome чистить куки кэш историю.
Попробовал 2 пути
1)Через командную строку  - смотрел списки команд здесь http://peter.sh/experiments/chromium-command-line-switches/  и здесь https://olegon.ru/showthread.php?t=17073  - ничего не нашел чтоб в комплексе все очистить
2) через chrome://settings/clearBrowserData   - вбиваем в адресную строку и очистить всю историю и пр
3) принудительный запуск батника (*.bat) в директории файла excel  - до этого еще не дошел

Остановился на варианте 2)

Однако как вставить корректно chrome://settings/clearBrowserData      в код  - так вообще не открывает
Код
Shell """" & ThisWorkbook.Path & "\ChomiumPortable\chrome.exe""" & "chrome://settings/clearBrowserData", vbNormalFocus

если так пробовать через ссылку - тоже не получается - в chrome://settings/clearBrowserData автоматом стирает ":"  и все некорректно

Код
Shell """" & ThisWorkbook.Path & "\ChomiumPortable\chrome.exe""" & "http://chrome://settings/clearBrowserData", vbNormalFocus

Как прикрутить принудительное открытие chrome://settings/clearBrowserData   или есть какие другие пути чистить куки кэш историю при открытии ?
Изменено: fix555 - 08.02.2017 17:50:07
Разделение данных в ячейке на текст и числа и открытие в браузере
 
Добрый вечер всем !
Макрос в активной ячейке разделяет текст общий  на только_текст и цифры с помощью функции Extract_Number_from_Text (прописана на Лист1)
Функция работает - проверил - разделяет текст

надо было сделать так:
1)текст из активной ячейки разделить на только_текст   и цифры
2)Tолько_текст открыть в браузере
3)Цифры открыть в другом окне броузера

Основной макрос(который не работает) и пример прилагаю
Что неправильно сделал ?
Код
'http://www.excel-vba.ru/chto-umeet-excel/kak-ostavit-v-yachejke-tolko-cifry-ili-tolko-tekst/
'Для извлечения только чисел
'=Extract_Number_from_Text(A1; 0)
'или
'=Extract_Number_from_Text(A1)
'Для извлечения только текста
'=Extract_Number_from_Text(A1; 1)
Function Extract_Number_from_Text(sWord As String, Optional Metod As Integer)
'sWord = ссылка на ячейку или непосредственно текст
'Metod = 0 – числа
'Metod = 1 – текст
    Dim sSymbol As String, sInsertWord As String
    Dim i As Integer
 
    If sWord = "" Then Extract_Number_from_Text = "Нет данных!": Exit Function
    sInsertWord = ""
    sSymbol = ""
    For i = 1 To Len(sWord)
        sSymbol = Mid(sWord, i, 1)
        If Metod = 1 Then
            If Not LCase(sSymbol) Like "*[0-9]*" Then
                If (sSymbol = "," Or sSymbol = "." Or sSymbol = " ") And i > 1 Then
                    If Mid(sWord, i - 1, 1) Like "*[0-9]*" And Mid(sWord, i + 1, 1) Like "*[0-9]*" Then
                        sSymbol = ""
                    End If
                End If
                sInsertWord = sInsertWord & sSymbol
            End If
        Else
            If LCase(sSymbol) Like "*[0-9.,;:-]*" Then
                If LCase(sSymbol) Like "*[.,]*" And i > 1 Then
                    If Not Mid(sWord, i - 1, 1) Like "*[0-9]*" Or Not Mid(sWord, i + 1, 1) Like "*[0-9]*" Then
                        sSymbol = ""
                    End If
                End If
                sInsertWord = sInsertWord & sSymbol
            End If
        End If
    Next i
    Extract_Number_from_Text = sInsertWord
End Function

'ОСНОВНОЙ МАКРОС
Sub РазделениеТекста()
Dim tt As String, cifr As String
'переменная tt - тект  cifr - цифры в тексте
ActiveCell.Select
cifr = Extract_Number_from_Text(ActiveCell, 1)
tt = Extract_Number_from_Text(ActiveCell, 0)
With tt
   'убираем кавычки в тексте
   tt.Value = Replace(tt.Value, Chr(34), "")
   'убираем все переносы
   tt.Replace What:=Chr(10), Replacement:=" ", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
   'убираем лишние пробелы
   tt = Application.WorksheetFunction.Trim(tt.Value)
   'заменяем пробелы на "+" так работает браузер в поиске - если 2 слова то в поиск через + между словами
   tt = Replace(tt, " ", "+")
End With
Shell """C:\Program Files\Internet Explorer\IEXPLORE.EXE""" & "https://yandex.ru/search/?&text=" & tt, vbNormalFocus
Shell """C:\Program Files\Internet Explorer\IEXPLORE.EXE"" -new-window " & "https://yandex.ru/search/?&text=" & cifr, vbNormalFocus
'Shell """" & ThisWorkbook.Path & "\ChomiumPortable\chrome.exe""" & "https://yandex.ru/search/?&text=" & tt, vbNormalFocus
'Shell """" & ThisWorkbook.Path & "\ChomiumPortable\chrome.exe""--new--window " & "https://yandex.ru/search/?&text=" & cifr, vbNormalFocus
End Sub


Изменено: fix555 - 07.02.2017 20:25:58
Закрас по условию только одной строки в диапазоне
 
Добрый вечер всем
Макрос красит строку в диапазоне Range("A4:AB5003") в серый цвет по одинарному клику в столбце "А"
по двойному клику в столбце "A" в закрашенной строке цвет снимается
Как сделать так - если выше или ниже текущей закрашенной строки есть строки закрашенные тоже этим серым цветом
то в них цвет снимается ?
Те в диапазоне Range("A4:AB5003") может закрашиваться только одна строка в серый цвет по макросу - при закрасе текущей строки именно серый (а не другой)закрас с остальных строк снимается (снять серый цвет с диапазона выше и ниже текущей закрашенной строки )?

Макрос закраса такой
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'обратный закрас 1 столбец и переход сосед ячейка
If Not Intersect(Range("A4:A5003"), ActiveCell) Is Nothing Then
    Call ВыделениеСтрокиНетЦвета
    ActiveCell.Offset(0, 1).Select  'Переход на соседнюю ячейку
End If
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Коорд выделение + выделение белым по выд 1 столбца'макрос красим строки по клику в столбце A и защита от выделения строки
If Target.Cells.Count > 1 Then Exit Sub 'если выделено больше 1 ячейки - выходим
    If Not Intersect(Range("A4:A5003"), ActiveCell) Is Nothing Then
        For j = 1 To i
            If Rows(j).Select Then Exit Sub
        Next
Call ВыделениеСтрокиСерый
    End If
End Sub
Изменено: fix555 - 06.02.2017 18:08:48
Относительный путь на запуск файла в директории книги
 
Добрый вечер

Макрос открывает портабельный браузер и открывает ссылку подставляя значение из активной ячейки
Так работает
Код
Private Sub CommandButton6_Click()
ActiveCell.Value = Replace(ActiveCell.Value, " ", "+")
Shell """C:\Users\Max\Desktop\Проект\ChomiumPortable\chrome.exe""" & "http://ekb.rosfirm.ru/catalog?show_list=1&simple_search=1&search=Найти®ions=&field_keywords=" & ActiveCell.Value, vbNormalFocus
End Sub
Как прописать относительный путь (не абсолютный) правильно ?
- папка ChomiumPortable\chrome.exe   лежит в тойже директории где  и файл Excel (пути Проект\ChomiumPortable\chrome.exe  и книга тоже в Проект\Книга1.xls)
делаю так  - не работает
Код
Shell """ThisWorkbook.Path & "\ChomiumPortable\chrome.exe"""" & "http://ekb.rosfirm.ru/catalog?show_list=1&simple_search=1&search=Найти®ions=&field_keywords=" & ActiveCell.Value, vbNormalFocus
Изменено: fix555 - 05.02.2017 19:41:56
Перемещение формы по экрану
 
добрый день

столкнулся с проблемой
Если убрать из формы заголовок то как ее перемещать мышью   (тк она перемещается по заголовку)
Возможно ли сделать так чтобы перемещать не по заголовку
а в любом месте формы ?

Код для убирания заголовка такой в форму - в нем чтото изменить или это в свойствах форм правится ?
Код
Private Declare Function FindWindow _    
        Lib "user32.dll" Alias "FindWindowA" ( _    
        ByVal lpClassName As String, _    
        ByVal lpWindowName As String) As Long    
Private Declare Function GetWindowLong _    
        Lib "user32.dll" Alias "GetWindowLongA" ( _    
        ByVal hWnd As Long, _    
        ByVal nIndex As Long) As Long    
Private Declare Function SetWindowLong _    
        Lib "user32.dll" Alias "SetWindowLongA" ( _    
        ByVal hWnd As Long, _    
        ByVal nIndex As Long, _    
        ByVal dwNewLong As Long) As Long    
Private Declare Function DrawMenuBar Lib "user32.dll" ( _    
        ByVal hWnd As Long) As Long    
   
Private Sub UserForm_Initialize()    
    Dim ihWnd As Long, iStyle As Long    
   
    ihWnd = FindWindow(vbNullString, Me.Caption)    
    iStyle = GetWindowLong(ihWnd, -16&)    
    SetWindowLong ihWnd, -16&, iStyle And Not &HC00000    
    DrawMenuBar ihWnd    
End Sub
Можно ли сохранить форму на раб столе при сворачивании листа
 
Можно ли сохранить форму на рабочем столе видимой при сворачивании листа и обратно так же при этом - при раскрытии листа или активации форма остается на листе ? Форма дб модальной или немодальной при этом ?
Попробовал так и так и пр   не работает - все равно форма скрывается при сворачивании листа   Можно ли продолжать отображать форму при сворачивании листа ?
Код
Private Sub UserForm_Initialize()
If Application.Visible = True Then
UserForm1.Show
End If
If Application.Visible = False Then
UserForm1.Show
End If
End Sub
Изменено: fix555 - 03.02.2017 20:40:50
макрос для активного листа активную ячейку в центр
 
день добрый
есть макрос который в модуле книги Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
выдвигает активную ячейку в центр экрана
Как его применить для активного листа  без Target и без Private Sub Worksheet_SelectionChange(ByVal Target As Range)

только для действий определенного макроса на листе  ( к сожалению замена sh  на activesheet  не помогла и target c ошибкой вылазит)


исх код макроса в книгу
Код
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Dim cc As Range
    Dim cw As Range
    Dim dw As Long, dh As Long
   
    Set cc = Target
    Set cc = Sh.Cells(Int(cc.Row + cc.Rows.Count / 2), Int(cc.Column + cc.Columns.Count / 2))
    Set cw = ActiveWindow.VisibleRange
    Set cw = Sh.Cells(Int(cw.Row + cw.Rows.Count / 2), Int(cw.Column + cw.Columns.Count / 2))
   
    dw = cc.Column - cw.Column
    dh = cc.Row - cw.Row
   
    On Error Resume Next
   
    ActiveWindow.SmallScroll Down:=dh
    ActiveWindow.SmallScroll ToRight:=dw
   
End Sub
Изменено: fix555 - 02.02.2017 12:53:44
Создать 2 условия для макроса
 
Здравствуйте всем
как сделать 2 условия на выполнение макроса ?
проблема условий такая
Макрос запускается по Private Sub Worksheet_SelectionChange(ByVal Target As Range)
по клику на ячейке в столбце A

Но при этом еще есть одна бяка - при выделении целой любой строки (если захотел просто выделить) автоматом выделяются ячейки в столбце A
что приводит к запуску макроса что нехорошо

Как правильно сделать 2 условия на выполнение  макроса  - если строка выделена макрос не выполняем  - просто ячейка в столбце А выделена макрос выполняем
Код
If Not Intersect(Range("A4:A5003"), ActiveCell) Is Nothing Then
For j = 1 To i
If Rows(j).Select Then
Exit Sub
Next

...................... мой макрос
End If
Страницы: 1
Наверх