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

Страницы: 1
Парсинг сайтов которые iexplorer не открывает корректно
 
Возможно ли парсить сайты, если они не открываются в эксплоере? Сколько мониторил тему, так и не нашел решения. Если посылать страницу в любой другой браузер, то эксель не умеет работать с ними как .document . Но как то люди решают эти проблемы.
Особо много сайтов не вспомню, но на вскидку пара есть, проверил на вин 10. Да, не открываются.
https://dom.gosuslugi.ru/#!/houses

https://www.binance.com/ru/trade/ETH_USDT?theme=dark&type=spot

Может есть костыль или хитрость. Типа яваскрипт парсит в текст, а дальше текстом реплейсом или финдом, да хоть регэкспом , дергаешь необходимое...

Вон игры уже пишут на эксэль))) Спасибо Микрософту за этот чудо инструмент.
Парсер проверка по ИНН в реестре налоговой
 
Добрый день. Сталкнулся с проблемой
что бы не лазить на сайт, решил автоматизировать процесс. Но не пойму, то ли я не то делаю, то ли сайт не подходит под этот метод. Возмем несколько ИНН (3шт 2 МСП и одно нет)

6165061599- не МСП
6161085567- МСП
6165061599- не МСП
6161055347- МСП
6165061599- не МСП

При прогоне вместо необходимых МСП/Не МСП - выдает последнее удачно встреченное
6165061599- не МСП
6161085567- МСП от 67
6165061599- МСП от 67
6161055347- МСП от 47
6165061599- МСП от 47

Что я делаю не так?
Код
Private Sub inntoMSP() 'из а2 и ниже получить по ИНН данные
 Dim IE As Object
 Dim n As Integer
 Dim sAnswer As String

 On Error Resume Next ' пропуск ошибок
    Set IE = CreateObject("InternetExplorer.Application")
    IE.Visible = False
    
     IE.Navigate "https://ofd.nalog.ru/#"
    While IE.Busy Or (IE.ReadyState <> 4): DoEvents: Wend 'ожидание загрузки
    
 With IE.Document
 
     For n = 2 To Cells(Rows.count, 1).End(xlUp).Row ' берем по очереди ИНН
     
       .GetElementsByName("query")(0).Value = Cells(n, 1).Value
       .queryselector("#pnlSearch > div.quick-search-controls.form-layout-top-labels > div.form-field > div > div.field-value > button").Click ' нажать на найденый текст

Application.Wait Time:=Now + TimeValue("0:00:1")

Temp = IE.Document.queryselector("#tblResultData > tr > td:nth-child(2) > span").innertext
'Temp2 = IE.Document.queryselector("#tblResultData > tr > td:nth-child(1) > div.result-name > a > span").innertext

If Temp = 0 Then Sheets("ИНН").Cells(n, 2).Value = "не МСП" Else Sheets("ИНН").Cells(n, 2).Value = "МСП -" & Temp 'вставляем рядом найденное


  Next n
      End With
        
вставка из userform в требуемые ячейки согласно данных из многомерного масива
 
Добрый день.
Двойным кликом в столбце F активируктся форма с данными из массива, выбор вставляется в активную ячейку.

Не получается совместить подстановку остальных частей массива в другие столбики

Попытался через макрос который сверяет значение активной ячейки, если находит, то подставляет из массива,
но в модуле userform отказывается работать как кусок кода, так и ссылка на макрос  и даже функция
макрос который вроде как работает в модуле 2 с названием СЦ1 встроить ума не хватило.

Вероятно соль в публичности массива и передаче его между  модулями и userform , но это не точно. Чем больше читаю, тем больше начинаю путаться.
Изменить фрагменты текста и сцепить их обратно
 
Допустим я хочу поменять часть текста в ячейках
Код
Sub test()
Dim element As Range, a As Variant 'цикл по ячейкам

  For Each element In Selection
       a = element.Value 'значение конкретной ячейки
       a = VBA.Split(a, ", ") ' отделяем на части по критерию ", "
       n = UBound(a) 'a(n) это последнее после запятой с пробелом , т.е. если у нас было "мама, папа, брат", то получим a(n)=Брат

       msgBox a(n)
  Next  
End Sub

А как теперь к этому a(n) применить макрос и вернуть все в зад но с изменениями? Допустим если замена
Код
a(n) = Replace(a(n), одно, другое)

, то это же как то надо записать все назад ( причем у меня в замене еще пара циклов, по этому думал что проще сослаться на макрос)

Хотя бы верной ли логикой я иду? Как понимаю теперь нужно назад  что-то типа сцепить LBound(a) to [UBound(a)  - 1] + a(n)?
Замена в фрагментах текста с перебором заменяемых слов
 
Добрый, попалась гадкая таблица для анализа и сравнения, но проглядывалась некая система, между цифрами в конце пробел, а должен быть символ. Ну я как програмист мягко говоря не очень, но думаю по идее замены макрорекодер пишет, попробую. На удивление сработало. Х и У тут отдельно, т.к. мне кажется что только Х отработает 0&" "&0 ,1&" "&1, 2&" "&2 ,3&" "&3     ...      9&" "&9  или я ошибаюсь?[
т.е. было г. Азов Васильева 79 1 стало г. Азов Васильева 79что нибудь1
              г. Азов, Васильева, д. 79 1 стало  г. Азов, Васильева, д. 79что нибудь1

Код
Sub замена()
Dim x, y As Integer
   
For x = 0 To 9 '
For y = 0 To 9
  Selection.Replace What:=x & " " & y, Replacement:=x &"что нибудь"& y, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False
Next

Next
End Sub
Но вопрос на самом деле не в этом(просто плодить темы на схожую тему не правильно)
Вот с буквами сложнее, объявил массив и если пишу Selection.Replace x & "что нибудь" & АБВ, x & АБВ, где АБВ-имя переменной, то ошибка, попытался втулить for each, вообще закидало ошибками.

по запарке оставил i и вроде бы отрабатывает, но мне не ясно почему?  Я ведь i не объявлял, что оно значит? или это нечто по умолчанию?
т.е. было г. Азов Васильева 79 Б стало г. Азов Васильева 79Б
               г. Азов , Васильева,, 79 Б стало г. Азов ,Васильева,, 79Б
Код
Sub замена2()Dim x As VariantDim АБВ As Variant
АБВ = Array("а", "б", "в", "г", "д", "е", "ё", "ж", "з", "и", "й", "к", "л", "м", "н", "о", "п", "р", "с", "т", "у", "ф", "х", "ц", "ч", "ш", "щ", "ъ", "ы", "ь", "э", "ю", "я")
For x = 0 To 9 '
Selection.Replace x & " " & i, x & i   
Next
End Sub
ВПР минимальной даты или Аналог функции МИНЕСЛИ в офисе до 2019
 
Добрый день. Есть такая функция МИНЕСЛИ, в 2019 офисе, но к сожалению офис 2016, есть подозрение, что через нее можно получить требуемое.

Т.е. есть табличка, название/дата.
Из нее подтягиваем дату. Например
Код
=ВПР("*текст*"&с1;лист1!a:b;2;)

где с1 содержит название, которое ищем в лист1!a:b, *текст*- произвольное название, например города Москва,Ростов-на-Дону и т.п.... в зависимости от ситуации
Но так он находит первое встретевшиеся , сортировать лист 1 не вариант.

=МИН(ЕСЛИ или =НАИМЕНЬШИЙ(ЕСЛИ  не отрабатывают как надо из-за поиска с неточным соответствием "*текст*".

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

Я почти реализовал задуманное, осталось подправить сохранение. Т.к. че то ниче не выходит. тем похожих вроде бы много, но как то сложна и запутанно.

Суть: требуесся сохранить лист 1( или содержимое ячейки А1) как текст в кодировке ANSI , хоть куды, дело 10е, но т.к. хороший тон описывать что требуется на выходе, то по хорошему сразу во временную папку винды

для понимания о кавычках, почему то сохраняет не
Код
StackHorizontal (DirectShowSource("G:\Врач.json"),DirectShowSource("G:\Генералиссимус.json")
а вот так
Код
"StackHorizontal (DirectShowSource("G:\Врач.json"),DirectShowSource("G:\Генералиссимус.json"))"
Создание и запуск команды/скрипта/батника с выбором файла
 
Добрый день. Я не програмист от слова совсем. Просто Юзер, но иногда по аналогии как обезъянка могу нагородить "нечто" удобное для себя и знакомых.
Добрался до старого фото/видеоархива и через AviSynth нашел для себя интересную функцию, которую не нашел реализованной в другой софтине.
Т.е. открытие и просмотр синхронно 2х видео через potplayer/Vdub/playerclassic или иную софтину.
Суть проста, пишем текстовый файлик с рашинеем .avs
В нем
StackHorizontal (DirectShowSource("d:\Video\file1.MP4"),DirectShowSource( "d:\Video\file2.MP4"))
или
Interleave(DirectShowSource("d:\Video\file1.MP4"),DirectShowSource( "d:\Video\file2.MP4"))

1я открывает видео рядом(вертикал друг над другом), вторая покадрово 1 кадр 1й файл, второй кадр2й файл и т.д.

Т.е. смотри, сравнивай, делай выводы. Однако каждый раз файл создавать ручками не тру. Надо запилить что нибудь для удобства. Спиным мозгом чую для профи дело секундное, для меня же часы/дни/бесконечность(в случае если забью).  N/t/ запускаем наше "Нечто", оно нам открывает диологовое окно, мы выбираем 1й файл, потом второй, а оно нам запускает то, что нам надо.

Один из вариантов пришедших в голову VBA Ecxel , делал я макрос для создание меток  kml . Формировал команду в ячейке, сохранял как текстовик с нужным расширением. Запускал файл. Думаю вставить формулу или переменную со ссылками вопрос тоже решаемый.

Или же может я зря заморачиваюсь? Есть решения или вообще не через эксель, а батники надо делать?

Еще важно кодировка ANSI
Запуск макроса в зависимости от значения + цикл
 
Добрый день. Друг попросил помочь, а я мало того что забыл, да еще и не особо знал))
Допустим есть диапазон на листе1 b2:b9
на нем из выпадающей строки выбираются текстовые значения - методы(каждому методу будет соответствовать макрос, методов будет штук 20, ну или около того)
далее требуется пройти по каждой ячейке и позапускать макросы согласно значению
но что то я делаю не так.
Скорее всего строки
If Value = "ГГКц" Then ГГКц
If Value = "ГК,ЛМ" Then Application.Run ("!Акт-заказ.xlsb!Module1.ГК_ЛМ")
Код
Sheets("Старт").Activate
For Counter = 2 To 9
 Set curCell = Worksheets("Старт").Cells(Counter, 2)
 If Value = "ГГКц" Then ГГКц
 If Value = "ГК,ЛМ" Then Application.Run ("!Акт-заказ.xlsb!Module1.ГК_ЛМ")
 Next Counter

Я думал для каждого метода прописать If... Then.... где "ГГКц", "ГК,ЛМ" это методы/макросы..
т.е. простыми словами на лист итоговый акт вставляются по порядку таблички, согласно их последовательности в b2:b9
Диалог поиска из редактора VBA
 
Добрый день. Допустим
Application.CommandBars.ExecuteMso "FindDialogExcel"
вызывает окно поиска в эксель

Допустим есть переменная ADR и следующей строкой мы можем заполнить строку поиска, что искать
Range("a1").Find adr, , xlValues, 1, xlByColumns, 1, False

Ну и в ручную нажать кнопку найти все (не нашел как реализовать макросом, новерное не очень просто, или никому кроме меня не взбрендило)

Но помимо ручного нажатия кнопки , есть и еще одна проблема. Если окно поиска уже было открыто, то данные в диологовом окне не обновляются.

Значит перед запуском макроса надо данное окно поиска закрыть. (основной вопрос темы)

Файл думаю пока не требуется , весь монстр ниже. (сильно не пинайте за корявость ,еще потихоньку пилю, диапазон поиска и т.д но это не эта тема, работает и хорошо)
Код
Sub далее()

  If CheckBox1.Value = True Then
   adr = Range("c3").Value

   ' Set myCell = Range("C3:C9999").Find(adr)
    Cells.Find(What:=adr, After:=ActiveCell, LookIn:=xlValues, _
       LookAt:=xlWhole, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious, _
       MatchCase:=False, SearchFormat:=False).Activate
       Range("a1").Find adr, , xlValues, 1, xlByColumns, 1, False
  Application.CommandBars.ExecuteMso "FindDialogExcel"
    Else: CheckBox1.Value = False
   adr = Range("o2").Value
   Cells.Find(What:=adr, After:=ActiveCell, LookIn:=xlValues, _
       LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlPrevious, _
       MatchCase:=False, SearchFormat:=False).Activate
  Range("a1").Find adr, , xlValues, 1, xlByColumns, 1, False
  Application.CommandBars.ExecuteMso "FindDialogExcel"
  End If
  
'LookAt:=xlWhole если надо точное xlPart- частичное совпадение
'Then

End Sub
   
Пакетное применение макроса к файлам в папке с последующим сводом данных в отдельный файл.
 
Добрый день. Есть некий файл в котором лежат и из которого запускаются все макросы.

Есть папка с файлами xls* , структура файлов однообразна в каждом на листе с именем "ХХХ" макросом формируется табличка в диапазоне AB1:AO4. И вот все эти таблички нужно собрать в кучу.

Макрос ниже не отрабатывает (на 2х пк win10, офис 2016) убрал пропуск ошибок, ошибка Workbooks.Open sFiles или loop. По сути он в лучшем случае открывал 1й файл и на этом все, я перепробывал все вариации кода из интернетов на первых листах поисковика и никак.
Плюс сама реализация переноса в иной файл, если переносишь в иную книгу сначала, то она становится активнои и закрывается,убрал строчку закрытия 'ActiveWorkbook.Save SaveChanges:=True, думал хрен сним пусть все останутся открытыми, не помогло, но видимо потому что в целом макрос не отрабатывает.
Код
Sub Auto_Write_In_Books() ' цыкл по всем книгам в папке
Dim sFolder As String, sFiles As String, li As Long
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = False Then Exit Sub
sFolder = .SelectedItems(1)
End With
'Application.ScreenUpdating = False
sFiles = Dir(sFolder & "\*.xls*")
'On Error Resume Next
Do While sFiles <> ""

Workbooks.Open sFiles

test 'мой макрос

'ActiveWorkbook.Save SaveChanges:=True
sFiles = Dir
Loop
Application.ScreenUpdating = True
End Sub
Проверка запускать ли макрос
 
Добрый день. Зачастую возникает ситуация, что в таблице откуда берешь данные добавляют или убирают столбцы(забыв об этом уведомить хоть кого то ), запускаешь макрос и... все что нажито не посильным трудом в топку.

Хочу вставить проверку, например по шапке, если в шапке че то поменялось, значит макрос уведомляет, что надо править код. Что можно придумать?
Поиск дубликатов по нескольким критериям, упрощение или замена формулы
 
Код
=(СУММ(СЧЁТЕСЛИМН(Лист1!E:E;F1;Лист1!I:I;H1;Лист1!J:J;I1;Лист1!O:O;{"Критерий1";"Критерий2";"Критерий3";"Критерий4";"Критерий5";"Критерий6";"Критерий7";"Критерий8";"Критерий9";"Критерий10";"КритерийН"}))

+СУММ(СЧЁТЕСЛИМН(Лист1!E:E;C1;Лист1!I:I;H1;Лист1!J:J;I1;Лист1!O:O;{"Критерий1";"Критерий2";"Критерий3";"Критерий4";"Критерий5";"Критерий6";"Критерий7";"Критерий8";"Критерий9";"Критерий10";"КритерийН"}))

+СУММ(СЧЁТЕСЛИМН(Лист1!W:W;Лист3!A1;Лист1!O:O;{"Критерий1";"Критерий2";"Критерий3";"Критерий4";"Критерий5";"Критерий6";"Критерий7";"Критерий8";"Критерий9";"Критерий10";"КритерийН"}))+СУММ(СЧЁТЕСЛИМН(Лист1!W:W;Лист3!B1;Лист1!O:O;{"Критерий1";"Критерий2";"Критерий3";"Критерий4";"Критерий5";"Критерий6";"Критерий7";"Критерий8";"Критерий9";"Критерий10";"КритерийН"}))+СЧЁТЕСЛИМН(Лист2!E:E;"КРИТЕРИЙ";Лист2!B:B;Лист3!G1)+СЧЁТЕСЛИМН(Лист2!E:E;"FTTX";Лист2!B:B;Лист3!G1)+СЧЁТЕСЛИМН(Лист2!E:E;"КРИТЕРИЙ";Лист2!F:F;Лист3!A1;Лист2!F:F;"<>"&0)

+СЧЁТЕСЛИМН(Лист2!E:E;"КРИТЕРИЙ";Лист2!F:F;Лист3!B1;Лист2!F:F;"<>"&0)

+СЧЁТЕСЛИМН(Лист2!E:E;"КРИТЕРИЙх";Лист2!F:F;Лист3!A1;Лист2!F:F;"<>"&0)

+СЧЁТЕСЛИМН(Лист2!E:E;"КРИТЕРИЙх";Лист2!F:F;Лист3!B1;Лист2!F:F;"<>"&0)+СЧЁТЕСЛИМН(Лист2!E:E;"КРИТЕРИЙ";Лист2!A:A;M1)+СЧЁТЕСЛИМН(Лист2!E:E;"FTTX";Лист2!A:A;M1)+СУММ(СЧЁТЕСЛИМН(Лист1!V:V;Лист3!A1;Лист1!O:O;{"Критерий1";"Критерий2";"Критерий3";"Критерий4";"Критерий5";"Критерий6";"Критерий7";"Критерий8";"Критерий9";"Критерий10";"КритерийН"};Лист1!V:V;"<>0"))

+СУММ(СЧЁТЕСЛИМН(Лист1!V:V;Лист3!B1;Лист1!O:O;{"Критерий1";"Критерий2";"Критерий3";"Критерий4";"Критерий5";"Критерий6";"Критерий7";"Критерий8";"Критерий9";"Критерий10";"КритерийН"};Лист1!V:V;"<>0")))>0

Добрый день, есть несколько таблиц , допустим на листе4 в столбце S стоит данный монстр, вычисления из разных листов, в каждом 20000-80000 тыс строк(кол-во меняется)
Формулами счетеслимного находятся(после просмотра глазами убиваются) дубли по параметрам, отрабатывает оч. долго(даже если отключаешь все отображения, сторонние пересчеты и прочее)

Можно ли как то упростить этого монстра?

Например если сцепить и сделать как значение вот эту часть Лист1!I:I;H1;Лист1!J:J;I1;Лист1!O:O( т.е. 3ячейки на листе 1 и 3 ячейки на листе 4 как итог убираем несколько параметров и сравниваем в мтоге одну ячейку с одной)  ускорит ли данная махинация что то? очеь геморно добавлять столбцы, в них делать доп изменения, т.к. прейдется переписывать кучу макросов.(((
Изменено: mihail_ms - 27.11.2019 13:22:01
Очередное сравнение таблиц с одинаковой структурой
 
Добрый день. Надстройки ставить нельзя. Пример приложу позже если надо, пока не могу(т.к. с телефона) Берем две таблицы с одинаковой структурой A:Z, находящихся на разных листах одной книги. 1я строка заголовки.

Требуется в основную таблицу На листе NAME1 добавлять данные из листа NAME2.

Соответственно я вижу 2 сценария
1. Дублей нет, просто перенести
2. Дубли есть.Дубли ищем по столбцу C. В столбце P стоит дата, нам нужен самый свежий (причем т.к. данные подливаются, то на листе NAME2 даты всегда новее)


Вижу два пути
1 Перенести все, удалить дубли с критерием по свежей дате
2 Переносит построчно, с заменой дублей На листе NAME1 из листа NAME2.


Я так понимаю это два разных пути, какой будет быстрее? Я в програмировании 0, но с макрорекодером дружу и по аналогии иногда получается из цепочки макросов создать нужное. Может поможете что можно взять за основу. Или поможете написать готовый макрос. И еще, ВАЖНО что бы на других листах не съезжали формулы(хотя это наверное надо пробывать на практике и если что сливать таблицы в отдельном файле, а потом переносить )
ФОРМУЛЫ. Счетесли с условием не равно по каждому значению из диапазона значений
 
Добрый день. Есть формула =СЧЁТЕСЛИМН(Лист1!Z:Z;">="&Свод!E2;Заявки!Z:Z;"<="&Лист1!G2)

требуется добавить еще условия на точное НЕ совпадение, и прописывать 100 раз это в формуле не вариант, ибо это просто жесть. Иначе это бы выглядело

=СЧЁТЕСЛИМН(Лист1!Z:Z;">="&Свод!E2;Заявки!Z:Z;"<="&Лист1!G2;диапазон условия4;условие4;...... и так далие)

но можно ли в условии указать что считать если в столбце таком то , не содержится значение из столбца такого то.
Изменено: mihail_ms - 07.08.2019 16:31:33
Пакетная замена значений в документе WORD, посредством формы EXCEL
 
Добрый день. Пример постараюсь выложить позже. А пока теория.

Есть документ WORD . В нем я авто заменой хочу поменять ряд слов и каждый раз нажимать CTRL+H и копипастить нужное можно, но время. Соответственно, может можно сделать таблицу соответствий ( на 10к другой значний) и нажатием кнопки решить этот вопрос за секунду. Все решения в этом направления в интернете через какие нибудь платные, громоздные надстройки и прописывание каких то хитрых тэгов в документе, а можно ли как я описал? Т.е. табличка
в одном столбце что меняем, напротив соответственно на что. Причем я понимаю что можно прикрутить потом от выбора документа который редактируем(нужный шаблон, например прописать адрес где лежит документ C:\...\... в ячейке), до автосохранением с именем из ячейки?
Упрощение замены текста, Замена текста с порядковым номером на другой текст
 
Добрый день. Постарался описать все в примере
суть или добавить\заменить в формуле
Код
ЕСЛИ(ИЛИ(A1="</Document></kml>";A1="");"";ЕСЛИ(Лист1!A2="";"</Document></kml>";СЦЕПИТЬ("<Placemark><name>Point";СТРОКА(Лист1!A2);"</name><description></description><Point><coordinates>";Лист1!B2;",";Лист1!A2;",0</coordinates></Point></Placemark>")))
Чтобы Из третьего столбца правильно заменялась информация, или
Скрытый текст

превратить
Скрытый текст

И так много раз Point183 а С194
Перенос формата/цвета шрифта при совпадении данных
 
Добрый день, ВПР классная штука , а нет ли возможности что бы впрились не только значения, но и форматы. Т.Е.
Есть у меня список на 1м листе и некоторые значения перекрашены, впр подставляет значение, а можно ли подставлять таким способом формат\Цвет шрифта или  можtnt предложить другой способ?
Изменено: mihail_ms - 29.08.2018 15:30:50
Прогрессия с даданными параметрами
 
Добрый день. Есть тупая задача сделать список. Есть таблица с названием улицы и первым и последним домами по четной и нечетной сторонам, требуется ее развернуть как в примере, т.е. что бы протянуло прогрессией с от и до...
Удаление строк по двум условиям (Цвет)
 
Добрый день, с цифрами и текстом я аналогичную задачу решал, а с цветами не могу.
В общем в столбце C есть адреса, условным форматированием подсвечеваются дубли(заливка ячейки). Текст не актуальных перекрашиваетя в красный.
Как автоматизировать процесс . Т.Е. по нажатию кнопки удалялась строка, если цвет текста красный, а цвет ячейки "светло-бежевый"(ну или другой)
эксэль 2016

Заранее спасибо.
Замена макросом, по 2м совпадениям
 
Лист 1
столбец А - уникальный номер
столбец В-статус (закрыт, отложен, нет)
столбец С-дата изменения статуса

Лист 2 Аналогичная таблица

задача: при совпадении значения в столбце А из листа 1 с слистом 2 в столбах лист 1 В и лист 1 С подтянут(подставить) значения из столбцов лист 2 В и лист 2 С , при этом после этого (замены) удалял бы всю строку, если замены не было, оставлял бы все как есть.

Т.к. 1 вопрос-1 тема.
[ Закрыто] Унификация/нормализация данных макросом замены по таблице соответствий
 
Добрый день. Подскажите пожалуйста (впр хорошо, но много формул грузит систему)
Требуется макрос.
Например
лист 1 - таблица с которой работаем( в которой много не соответствий , например "п.Овощьной","пОвощьной","пос.Овощьной" и т.д.
лист 2 - список в столбце А "значения"(в моем случае текст) которые надо заменить, в столбце В значения на которые надо заменить, дабы попытаться привести таблицу к нормальному виду и потом работать с формулами. (на выходе имеем допустим вместо многообразия значений одно, приведенное к одному виду)

Это универсальное решение, в последствии нашел несоответствие внес на лист 2 в столбец А1 (пос.Овощьной азовского р-на) в В1 ( п.Овощьной),А2( значение Х) в В2(Значение У) и т.д. нажал кнопку и работай с таблицей. Думаю многие найдут применение. Т.К. многие работают с выгрузками, в которые вносят данные люди(а от человеческого фактора\ошибки никто не застрахован) и каждый раз в выгрузке будет ошибка(т.к. в крупных корпорациях хрен добъешься что бы что то , где то поменяли)
Заранее спасибо.
Счет по разным именам и объеденение в группы, Счет по разным именам и объеденение в группы
 
Добре. Допустим есть
Лист 2, в котором постоянно обновляется список или меняется статус
Лист 1 сводная информация

Задача: При выводе информации на листе 1 ( ячейки В2 и С2) ДНТ Союз учитывалось бы и СТ Союз, и СНТ союз.

Если усложнить, было бы неплохо как то прописать Что ДНТ Союз это если ( Таганрог, пушкинская дом 1-10, Таганрог Капустина дома 3-18 и т.д.)
ДНТ Союз Азов это и т.п.
сохранение части формул пр сортировке
 
Добре.
Есть сводная таблица на вкладке ОП формулы в столбиках D и E при сортировке сбиваются.
т.е. напримере в столбика D
возьмемм ячейку D2
=ЕСЛИОШИБКА(ВПР(ОП!$C2;База_донских!$A$2:$B$8;2;ЛОЖЬ);ВПР(ОП!$C2;окс_полная!$B$2:$C$3;2;ЛОЖЬ))
после сортировки допустим
=ЕСЛИОШИБКА(ВПР(ОП!$C7;База_донских!$A$2:$B$8;2;ЛОЖЬ);ВПР(ОП!$C7;окс_полная!$B$2:$C$3;2;ЛОЖЬ))
а должно так же остаться ОП!$C2
Ставить $ перед двойкой бесполезно, т.к. физически ячейка при сортировке будет уже не в d2. точнее в в столбике С относительно столбика D будут разные значения
не знаю как сформулировать...

Как бороться?

прикреплен ods с изм. расширением (т.к. меньше весит)
Сравнение с добавлением
 
Добрый день. С макросами дружу плохо, обычно пользуюсь условным форматированием ( если кому надо =СЧЁТЕСЛИ($B:$B;A1)>0 подсвечивает в А то что есть в B)

но как бы сделать так:
На листе 1 в столбце А есть допустем адреса (ленина, 1                              в столбце B   квартирность (52
                                                                              ленина, 2                                                                              33
                                                                              ленина, 3)                                                                             12
и на листе 2 в столбце А есть аналогичные значения(ленина, 5           то есть есть такие же значения но есть и другие...
                                                                                         ленина, 1
                                                                                         ленина, 3)
можно ли сделать так, что бы на листе 2 напротив совпадающих значений (в столбце B) прописалась квартирность (перенеслись/скопировались значения)
в примере вкладки листов было, как должно стать.
Спасибо.
Замена символа в значении
 
Всем добра.
Есть таблица, овер 9000 значений.
Требуется от вида

...
Цезаря Кунникова, 9к8а
Нариманова,6б
Ивановского, 34к11
......
привести к значению
...
Цезаря Кунникова, 9\8а
Нариманова,6\б
Ивановского, 34\11
......
При замене через ctrl+h не все гладко, тк если менять "к" на "\" то оно поменяется и в \унни\ова, 9\8а, даже если ставит с учетом регистра, то получим  Кунни\ова, 9\8а
Что можно сделать?
Страницы: 1
Наверх