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

Страницы: 1 2 3 4 След.
Как наложить два биржевых графика с 4 параметрами на один?, параметры: открытие, закрытие, хай и лоу
 
Надо заново создать новый график с ценой открытия, закрытия, хай и лоу.

файл.мышкой зацепить то что Excel выделяет линиями (когда выделена диаграмма) и протянуть вправо чтобы охватывало значения второго графика.
Как наложить два биржевых графика с 4 параметрами на один?, параметры: открытие, закрытие, хай и лоу
 
Неправильно создан график. Надо создать с ценой открытия, закрытия, хай и лоу. А потом мышкой зацепить то что Excel выделяет линиями  (когда выделена диаграмма) и протянуть вправо чтобы охватывало значения второго графика.  
Парсинг сайта cbr.ru, необходимо скриптом собрать информацию
 
Вопрос снят. Оказывается надо было не к таблицам HTML тегов обращаться, а к td
Правильная строка
Set Htable = IE.Document.getElementsbyTagname("td")  
Парсинг сайта cbr.ru, необходимо скриптом собрать информацию
 
Подскажите пожалуйста.
Задаю Htable объекты находящиеся на активной странице браузера:
Set Htable = IE.Document.getElementsbyTagname("table")
В окне Locals вижу что нужное мне значение находится в Item(42).innerText
Однако попытка вытащить это значение в переменную через Var = Htable(46).all(42).innerText   выдает ошибку "Object required".
Но при этом это работает если вместо 42 поставить значения с 1 до 4. То есть к примру Htable(46).all(4).innerText работает правильно.
Вопрос почему программа не видит объекты Item дальше 4-го?  
Помогите выбрать телефон, Телефон
 
Телефоны/Смартфоны меняю редко. И нынешний Lenovo A526 всем устраивает, но после 2-х падений испорчен внешний вид (см. Фото). А чехлы и прочую защиту увы не воспринимаю. В этой связи выбор сейчас в пользу металлических корпусов.
Сначала выбор пал на Lenovo Slic S90, но оттолкнули негативные отзывы на яндекс маркете.
Еще пригляделся к samsung Galaxy A3, но подробно еще не рассмотрел.
Кстати, кто знает у A3 / A5 рамка металлическая? А то производители иногда хитро делают. Пишут что метал, а в итоге рамка (окантовка) из пластика, а металлическая только задняя крышка, которая при падении редко страдает.
А у меня на моем A526 при падении пострадала именно краска пластиковой рамки, хотя на задней крышке и на стекле ни царапины.

Изменено: Radik_82 - 13.11.2016 20:48:02
Помогите выбрать телефон, Телефон
 
Цитата
Dima S написал:
Наверное windows 10 mobile это таки не мое(
так как с привычным windows там общее только название)
Я это тоже уже понял. Я думал что они туда настольную windows 10 запихнули, а оказалось что mobile. И да, судя по обзорам от настольной там только название.

Цитата
Chyma написал:
Бери айфон
Если честно нет желания погружаться в изучение новой ОС. Плюс один знакомый с Андройдом, у которого был IOS, сказал что никогда больше не вернется на айфон, так как с этой осью куча головной боли.
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Вот пример. 2 листа. При совпадении условий перенос с 1-го на 2-й.
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Цитата
Hugo написал:
Никакой нет проблемы получить счётчик - он ведь сохранён в словаре.
Берите словарь.Item(Arr1(i, 1)) ну или что там было ключём в словаре...
Неа, ошибка что привышен Range.
Я сейчас прикреплю пример
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Я столкнулся со следующей проблемой. Приведенные коды работают если при совпадении ставим жестко "Ок". Да вот только в 90% случаев при совпадении я переношу значения других массивов. То есть как пример
Код
 If Arr1(i, 1) = Arr2(x, 1) Then
                            ActiveSheet.Cells(x, 3) = Arr3(i, 1)
                            ActiveSheet.Cells(x, 4) = Arr5(i, 1)
                        End If


Дело в том что SAS888 и Doober разбивают блок на 2 отдельных цикла и из-за этого при совпадении условия If не удается получить значение с нужным порядком у Arr3 и Arr5, так как счетчик 1-го цикла уже отработал и  "замер" на 300 000.

Казанский, Ваш подход в этом случае наверно не подойдет.
Наиболее под это подходит код от The_Prist, но я его брейкнул на 45-й минуте. Попробую на ночь запустить и посмотреть ск-ко будет по времени
Изменено: Radik_82 - 09.11.2016 01:10:47
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Цитата
TheBestOfTheBest написал:
попробуйте на полных данных (файл поместить в папку С:\1\, ПКМ-Обновить)
Он, я так понял, "стучится" на внешние ресурсы? Если БД, то понятно что SQL для таких объемов это очень быстро. У меня стоят Oracle и MSSQL.
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Цитата
Hugo написал:
Вообще о скорости работы ничего однозначно сказать нельзя - вот например код на массиве и словаре от SAS888 должен отработать быстрее чем от Doober'a, где значения пишутся на лист, но т.к. там на лист пишутся всего 2 значения (!!!), то и не удивительно что выгрузка массива по факту происходит дольше.
Да, я увеличил количество совпадений до 40 тысяч и код от  SAS888 обработался за 4 секунды, а код от Doober'a за 8 сек.
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Цитата
TheBestOfTheBest написал:
Может SQL-запросом попробовать (если выложите файл-пример со структурой данных) ?
Он полностью не влезает. Вот пример первых 100 строк.
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
SAS888, Ваш способ 10 секунд.

The_Prist, уже 10 минут прошло и пока еще обрабатывается

Ребята, спасибо! Буду разбираться с Вашими подходами. Это очень очень быстро для таких объемов, а значит рано VBA списывать со счетов. И даже ограничение в 1 млн строк не предел. Мне в Россгострахе рассказали что им удалось в сводную таблицу с помощью группировки запихать аж 4 млн строк и это все регулярно апдейтится с базой данных.  
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Цитата
Doober написал:
А так сколько покажет секундомер?
5 секунд  :)
Век живи век учись
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Цитата
Сергей Беляев написал:
Может не до конца разобрался в задаче или сама задача тестово-показательная, но можно же использовать в этом случае обычный ВПР.
Цитата
SAS888 написал:
Можно. Но, дополнительные 30000 формул, я думаю, не есть хорошо.
Да, задача исключительно любительская. 2 года работал с массивами 25 тыс и все было Ок. В следующем месте работы объем увеличился до 70 тысяч и сразу заметил тормоза.
Пробовал ВПР, но эксель сначала повис, а потом вообще вылетел с ошибкой. Возможно надо файл подкачки включить, так как у меня кэш не сбрасывается в своп и все "висит" в ОЗУ.
Предел скорости массивов VBA, можно ли повысить скорость обработки
 
Привет! Есть маленький код с применением массивов и 2-мя циклами. Вот только скорость обработки 300 тысяч строк составляет 1,5 часа. Железо современное. Известны ли Вам способы ускорить обработку? Отмечу что в условии IF по факту всего 2 совпадения из 300 тыс. Так что тормоза из-за записи больших диапазонов на лист можно сразу отклонить. Следовательно упираемся именно в сам объем, а именно 300 тыс.
Код
Sub test300()
    Dim Arr1()
    Dim Arr2()
    Dim i&
    Dim x&
Application.ScreenUpdating = False

            With Sheets(1)
                Arr1 = .Range(.Cells(1, 1), .Cells(300000, 1)).Value
                Arr2 = .Range(.Cells(1, 2), .Cells(300000, 2)).Value
            End With

                For i = 1 To 300000
                    For x = 1 To 300000
                        If Arr1(i, 1) = Arr2(x, 1) Then
                            ActiveSheet.Cells(x, 3) = "Ok"
                        End If
                    Next
                Next

Application.ScreenUpdating = True
End Sub
Вставить диапазон Excel в Power Point как картинку
 
Спасибо. Взял за основу. Вот только возник вопрос. Автор кода отменяет прорисовку объектов на экране, но интересно что далее в коде не происходит возвращение в обычный режим через true. Как думаете, это он не досмотрел или возврат в обычный режим не требуется, так как в конце происходит активация PowerPoint?
Код
'Optimize Code
  Application.ScreenUpdating = False
 
Помогите выбрать телефон, Телефон
 
А что думаете про смартфоны на платформе windows 10 mobile?
Например Microsoft Lumia 650 DS 16
Определить количество значений после фильтрации
 
Понятно. Ваш способ с ПРОМЕЖУТОЧНЫЕ.ИТОГИ тоже кстати рабочий.
Определить количество значений после фильтрации
 
Код
endiche = Cells(Rows.Count, 1).End(xlUp).Row
With Range(Cells(2, 1), Cells(endiche, 1))'Диапазон
'количество видимых ячеек в Диапазоне:
y = .SpecialCells(12).Count
End With

Оригинально. Век живи век учись. Спасибо помогло.
А что означает (12) в аргументах  SpecialCells?

p.s. всем спасибо за участие. все способы попробовал.
Определить количество значений после фильтрации
 
Приветствую коллеги!
Хочу циклом отфильтровать каждый столбец по условию "все что < 30". И следом передать в переменную Y количество тех строк, что остались после заданной фильтрации.
Проблема. Если номер последней строки удается получить через End(xlDown), то как определить номер строки первого значения в отфильтрованном столбце?
Например в приложенном файле, в первом столбце после фильтрации остается два значения, это 1 и 12. То есть Y=2. Однако я пробовал разные варианты и получал либо 4, либо 6.  
Подкиньте какую-нибудь идейку.
Найти дубликаты на основании нескольких значений
 
Всем спасибо, понял.
Найти дубликаты на основании нескольких значений
 
Приветствую! Подскажите пожалуйста идею как найти дубликаты, если уникальность каждого складывается только из нескольких значений. Например: ИНН+договор+сумма.
То есть одинаковых ИНН может быть 10, как и договоров. Следовательно по идее надо "загонять" все 3 значения в массив и проверять циклом. Но вот тут у меня и тупик - а с чем сравнивать? Значения массива со значениями на листе откуда его (массив) и получили? Но тогда всё 100% будет дубликатами.
Что делать?
Изменено: Radik_82 - 30.07.2016 12:59:55
Переизбыток и нехватка циклов, For Next и его плюсы и недостатки
 
Цитата
Пытливый написал: Использовать цикл Do... While, Do... Until
Ох, все никак я их не освою к своему сожалению.

Doober, вам тоже спасибо за участие.
Переизбыток и нехватка циклов, For Next и его плюсы и недостатки
 
Цитата
Апострофф написал: Попробуйте в TDSheet задействовать ещё один столбец
Оригинальное решение. Спасибо! :)
Переизбыток и нехватка циклов, For Next и его плюсы и недостатки
 
Добрый день. Не могу решить проблему из-за ограничений цикла For Next.
Есть 2 листа, пытаюсь сравнить значения  циклом For Next.
Проблема:
- при совпадении условий оператор закрашивает ячейку и выходит из цикла i  из-за наличия Exit For и переходит к следующей проверке. Однако так как много повторяющихся значений, то в следующий цикл он опять закрашивает тоже самое значение, которое уже закрасил и опять выходит. Итог - вместо 10 одинаковых строк закрашена всего 1.
- убираем цикл  Exit For. В итоге закрашенных значений получаем больше чем должно быть. Оператор находит совпадения и тупо все их красит. Итог - вместо 7 закрашенных и 7 не закрашенных ячеек, получаем все 14 закрашенных.
Прошу подсказать решение. Файл прикрепить не смогу из-за наложенных безопасниками ограничений
Код
Sub Cycle_with_Massive_zalivka_bez_cycles()    Dim Naimenovanie As Variant
    Dim Zalivka As Variant
    Dim MyArray1() As Variant
    Dim MyArray2() As Variant
    Dim j%, i%
    Set Analiz = Sheets(Лист4.Name)
    Set TDSheet = Sheets(Лист3.Name)
    Application.ScreenUpdating = False
   
            With TDSheet
                MyArray1 = .Range(.Cells(1, 2), .Cells(7948, 2)).Value
            End With
 
           With TDSheet
                MyArray2 = .Range(.Cells(1, 12), .Cells(7948, 12)).Value
            End With
 '        Cycle J
            For j = 1 To 7895
                Naimenovanie = Analiz.Cells(j, 2)
                Summa = Analiz.Cells(j, 13)
                Zalivka = Analiz.Cells(j, 2).Interior.Color
                Data = Analiz.Cells(j, 16)
                Nomer_Akta = Analiz.Cells(j, 17)
                Otpravka_s_reestrom = Analiz.Cells(j, 18)
                Na_soglasovanii = Analiz.Cells(j, 19)
               Ispolnitel = Analiz.Cells(j, 20)
                V_Rabote = Analiz.Cells(j, 21)
                Vozvrat = Analiz.Cells(j, 22)
                Primech = Analiz.Cells(j, 23)
'        Cycle i
                    For i = 1 To 7948
                        If MyArray1(i, 1) = Naimenovanie And MyArray2(i, 1) = Summa Then
                            TDSheet.Cells(i, 2).Interior.Color = Zalivka
                            TDSheet.Cells(i, 15) = Data
                            TDSheet.Cells(i, 16) = Nomer_Akta
                            TDSheet.Cells(i, 17) = Otpravka_s_reestrom
                            TDSheet.Cells(i, 18) = Na_soglasovanii
                            TDSheet.Cells(i, 19) = Ispolnitel
                            TDSheet.Cells(i, 20) = V_Rabote
                            TDSheet.Cells(i, 21) = Vozvrat
                            TDSheet.Cells(i, 22) = Primech
                        Exit For
                        End If
                    Next i
           Next j
        Application.ScreenUpdating = True
End Sub
VBA: как отделить от левого значения известное правое?, Left, Right, VBA
 
Спасибо.
VBA: как отделить от левого значения известное правое?, Left, Right, VBA
 
Подскажите как задать длину значения согласно переменной.
Например в ячейке значение"Больше пяти"
Соответственно MyValue_1 = "Больше пяти"
Переменная Dlina = 5
Как получить MyValue_2 = "Больш" подставив в нее значение Dlina?
Двойной цикл For Next
 
Короче я думаю забить и сделать все топорно - при совпадении значений берем и переносим его на другой лист, а на проверяемом соответственно удаляем.
Выбрасываем из кода Else и Exit For и пусть цикл бегает по пустым ячейкам, пока не найдет ячейку со значением.
Вроде все учел
Двойной цикл For Next
 
Именно! Но получаем 172 закрашенных значения, что неверно так как изначально нужно найти 167 совпадений.
И это при условии без выхода из внутреннего цикла. Если выходить, то значений будет вообще всего лишь несколько десятков.
Страницы: 1 2 3 4 След.
Наверх