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

Страницы: 1 2 3 4 След.
Получение котировок и индикаторов для биржевой торговли
 
Doober, спасибо, Сергей.
Получение котировок и индикаторов для биржевой торговли
 
Цитата
JeyCi пишет: Timing - лучший индикатор того, когда торговать не стоит или наоборот - имеется однозначный перевес спроса или предложения в рынке... не забывайте находиться "вне рынка" - когда он не неоднозначен
Благодарю!
Кстати, ТоС у вас тестовый или полноценная версия? Как я понял, нужно привязывать реальный счет брокерский, чтобы иметь возможность тащить данные.
Получение котировок и индикаторов для биржевой торговли
 
Цитата
JeyCi пишет: что-то можно из ToS - взять Demo здесь и посмотреть
Покопался в ToS, похоже, лавочку прикрыли для тестового аккаунта, так что это уже неактуально
Получение котировок и индикаторов для биржевой торговли
 
Цитата
JeyCi пишет:
сначала разобраться нужны ли они вам вообще в xl !! -
если "побаловаться торговлей " - то это в торговом терминале, а не в excel
Благодарю за развернутый ответ, пошел изучать.
Получение котировок и индикаторов для биржевой торговли
 
Добрый день. Интереса ради решил побаловаться торговлей на бирже (как источник заработка это не рассматриваю, скорее получится наоборот :).
Хочу выгружать в эксель в реальном времени различные индикаторы, которые можно утянуть с веб-страниц (что-то можно из Quik в эксель передовать через DDE). На форуме видел макрос по получению курсов с ЦБР.ру, довольно простой и понятный даже для новичка вроде меня. Мне кажется тут будет куда сложнее. Понятно, что готовых рецептов здесь нет, прошу совета с чего начать (Какую литературу читать, какие курсы слушать). Где есть готовые примеры, которые можно по костям разобрать.
курс цбр (ошибка макроса)
 
Добрый день, коллеги. Скачал макрос год назад на получение курса с cbr.ru, у всех коллег он прекрасно работал. Я сам понимаю его довольно поверхностно, достаточно, чтобы применять, но не править. Недавно нужно было запустить на компьютере с не русскими региональными настройками (Английские, вероятно), там дата была в формате 01/03/2014, а на других машинах дата отображалась всего нормально, например 01.03.2014. Правка даты не помогала, макрос все равно не правильно отрабатывал, вот код. Косяк, вероятно, тут dd\/mm\/yyyy. Как сделать макрос универсальным, чтобы он мог дату и в том, и в том формате обработать? У меня на листе есть код, проставляющий дату = date (текущей), поэтому от формата 01/03/2014 вроде как не уйти.

Код
Function GetRate(ByVal CurrencyName As String, ByVal RateDate As Date) As Double
          ' функция возвращает курс валюты CurrencyName на дату RateDate
    ' в случае ошибки (неверная дата или название валюты) возвращается 0
    On Error Resume Next
     CurrencyName = UCase(CurrencyName): If Len(CurrencyName) <> 3 Then Exit Function
     Set xmldoc = CreateObject("Msxml.DOMDocument": xmldoc.async = False
     url_request = "http://www.cbr.ru/scripts/XML_daily.asp?date_req=" + Format(RateDate, "dd\/mm\/yyyy"

     If xmldoc.Load(url_request) <> True Then Exit Function    ' Запрос к серверу ЦБР

     ' Обработка полученного ответа
    Set nodeList = xmldoc.selectNodes("ValCurs": Set xmlNode = nodeList.Item(0).CloneNode(True)
     Set node_attr = xmlNode.Attributes(0): strDate = node_attr.Value
     Set nodeList = xmldoc.selectNodes("*/Valute"
     For i = 0 To nodeList.Length - 1    ' поиск нужной валюты
        Set xmlNode = nodeList.Item(i).CloneNode(True)
         If xmlNode.childNodes(1).Text = CurrencyName Then
             CurrencyRate = CDbl(xmlNode.childNodes(4).Text)
             divisor = Val(xmlNode.childNodes(2).Text)
             GetRate = CurrencyRate / divisor
             Exit Function
         End If
     Next
End Function
Изменено: Oleg - 24.12.2014 08:01:32
Сводная таблица минмальное значение - максимальное.
 
Добрый день.
Имеется таблица вида:
[Дата] [Время] [Сотрудник]
Можно ли с помощью сводной таблицы построить такой отчет, в котором по Х будет Дата, по У будет Сотрудник. А в ячейках будет разница максимального и минимального времени для этого сотрудника на эту дату. У меня получается сделать только максимум или только минимум по полю Время.

Спасибо.
Проблема длины текста при переносе из старших версий экселя
 
Цитата
SAS888 пишет: Это известная ошибка Excel 2003
спасибо
Проблема длины текста при переносе из старших версий экселя
 
vikttur,не понял вас

Что касается бага, я понял следующее путем экспериментов:
Если присваивать значение диапазону ячеек, а в одной из ячеек символов больше 911, то вылезает ошибка 400.
Код
 лист1.[a1:a2].Value = лист2.[a1:a2].Value

При этом синтаксис значения не имеет.


Если присваивать значение только одной ячейке, то все ок и ошибок не бывает.

Код
лист1.[a1].Value = лист2.[a1].Value 

нашел подобную проблему
http://dailydoseofexcel.com/archives/2006/12/04/writing-to-a-range-using-vba/
решения похоже нет
Изменено: Oleg - 08.10.2014 08:56:04
Проблема длины текста при переносе из старших версий экселя
 
Цитата
ikki пишет:
мде... возможно, такой криворукий макрос и работает в 2013-м Excel.
проверить не на чем, поверю на слово.
но вообще-то это делается иначе.
либо через метод Copy
либо через связку методов Copy - PasteSpecial
либо - как в сообщении #6 - через свойство Value.

описания и примеры для всех вариантов есть в справке.
не, дело не в макросе явно!
Да, мой косяк, не поставил в примере value. Вот исходный код:
Код
WS_calc.Range("S5:S" & lastrow)).Value = WS_spec.Range("B5:B" & lastrow).Value
В 2013 отрабатывает нормально, в 2003 ошибка 400.
апдейт: еще интереснее то, что код вида
Код
WS_calc.Range("S5:S" & lastrow)).Value = WS_spec.Range("B5:B" & lastrow).Value
нормально отрабатывает в 2013, вылетает в 2003
а код в тестовом файле (что приложил)
Код
WS_calc.Range("S5:S" & lastrow))= WS_spec.Range("B5:B" & lastrow)
Вылетает и в 2003, и в 2013 с ошибкой 400
а вот такой же код из исходного файла вылетает только в 2003.
Изменено: Oleg - 07.10.2014 16:36:59
Проблема длины текста при переносе из старших версий экселя
 
Файл прилагаю, макрос test.
Ошибка 400.
Проблема длины текста при переносе из старших версий экселя
 
Может быть пример плохой, я запихал в файл первое, что поиском из скл базы вытащил. Есть тексты длинее.
Ошибка вылезает когда начинаю присваивать одному range значение range, в котором содержится подобный текст.
Изменено: Oleg - 03.10.2014 21:54:01
Проблема длины текста при переносе из старших версий экселя
 
Ситуация: есть sql база, я к ней подключаюсь из excel файла и копирую определенные строки (книга1). На 2013 экселе все ок, но на 2007 и тем более на 2003 возникает проблема.

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

Благодарю.
Изменено: Oleg - 03.10.2014 13:00:28
Экспорт в ворд с отступом от левого края листа
 
Как сделать, чтобы перед вставкой он вставлял переход на новую строку (enter)?
Экспорт в ворд с отступом от левого края листа
 
супер, спасибо!
Экспорт в ворд с отступом от левого края листа
 
Коллеги, добрый день! Я позаимствовал макрос с этого форума, надо отметить, работает как часы - экспортирует в ворд кусок текста из таблицы.

Код
Sub export_to_word()
    Set wa = CreateObject("Word.Application")
    wa.Visible = True: Set wd = wa.Documents.Add
    wd.PageSetup.Orientation = 0
    WS_calc.Range("A1:Z3").Copy
    wd.Range.PasteExcelTable False, False, False
    Application.CutCopyMode = False
End Sub
К сожалению, таблица в ворд нормально не влезает, я бы хотел изменить отступ от левого края листа ворда. Это возможно сделать?
универсальный код, меняющий вызывающий объект
 
Цитата
Игорь пишет:
выделяем все ячейки (или их часть), в свойствах снимаем галочку «защищаемая ячейка»,
ставим защиту на лист, - теперь кнопки на автофигурах не сдвинуть, а ячейки по-прежнему редактируются.
Да, действительно. Но есть еще один небольшой минус (довольно неочевидный). Когда снимаешь галочку защита объекта (не могу снять защиту со всех ячеек листа, нужно их защищать), по какой-то причине ячейки с проверкой данных нельзя таскать + (который в правом нижнем углу ячейки). А так да, может тоже перейду на автофигуры. Можно ли менять их фон?
Изменено: Oleg - 19.08.2014 13:13:26
универсальный код, меняющий вызывающий объект
 
Цитата
Игорь пишет: я в качестве кнопок использую только автофигуры, - там нет событий типа mousedown
так что не для всех объектов получится сделать
Почему, если не секрет? Мне автофигуры не нравятся, т.к. выглядят по кондовому, нужно их большими делать, чтобы надписи нормально влезли. Зато нет проблем с искажением шрифтов. Еще что плохо в автофигурах, когда нужно разрешить менять ячейки, но запретить таскать кнопки - это сделать не получится, т.к. у них единое разрешение в защите.
Изменено: Oleg - 18.08.2014 23:26:58
универсальный код, меняющий вызывающий объект
 
Цитата
Игорь пишет: е - несложно (хотя, смотря какие объекты)
Если назначить всем объектам один и тот же макрос - то делается примерно т
Игорь, мне нужно в момент события mousedown окрасить объект, на котором произошел mousedown, а в момент mouseup убрать окрас  :)
универсальный код, меняющий вызывающий объект
 
Благодарю.
Посмотрел, немного не то. Я не знаю, как мне получить имя объекта, на который я тыкнул мышкой, не знаю, как к нему обратиться. Допустим, это кнопка aciveX
универсальный код, меняющий вызывающий объект
 
Добрый день, всем хорошего настроения.
Можно ли сделать универсальную функцию VBA, которая будет окрашивать объект при наведении мыши на него мыши, а при отводе ее будет возвращать первоначальный (ну или заданный) цвет. Я могу код в конкретный объект листа прописать (например, кнопку) но слишком уж их много.
Спасибо.
2013 экселе Worksheet_SelectionChange вызывает подтормаживания
 
Цитата
Jack пишет:
потестил и в 2010 и в 2013, правда на разных компьютерах. торможения не заметил. пробовал засекать. вставив пустой цикл, for i=1 to 10000000 next, все результаты порядка 10^(-5) c
Jack, спасибо, я подозреваю, что на моем компе просто плохо себя чувствует 2013, т.к. другие версии экселя так себя не вели.
2013 экселе Worksheet_SelectionChange вызывает подтормаживания
 
Цитата
Jack пишет: файл в xlsm формате так же тормозит в 2013 офисе?
Да, xlsm тоже тормозит.
2013 экселе Worksheet_SelectionChange вызывает подтормаживания
 
К сожалению, не помогло.
2013 экселе Worksheet_SelectionChange вызывает подтормаживания
 
В 2013 экселе Worksheet_SelectionChange вызывает подтормаживания, заметные невооруженным глазом (даже с пустым телом кода), что очень странно. А в 2003 эта же книга открывается нормально.
Код
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub
Есть идеи, в каком направлении копать?
Удалить строку из массива
 
LVL, спасибо, в коде разобрался. Единственное что озадачило - я думал в массивах с 0, а не с 1 элемента идет счет если задавать так redim (5), а не так redim (1 to 5).
А не быстрее будет перезаписать строку i (удаляемую) строкой i+1, а следующую i+1 заменить i+2 и до конца. Потом "обрезать" массив на 1?
Хотя, наверное, при большом кол-ве удаляемых строк, это будет хуже работать. Изначально я все эти процедуры выполнял с данными листа, но очень уж медленно выходит.
Удалить строку из массива
 
Добрый день, коллеги,
Подскажите, пожалуйста, эффективный код на удаление строки из двумерного массива (последующие строки "смещаются" вверх на 1).
На сколько я знаю, redimpreserve можно использовать только не выше двумерного массива?
Искажение шрифта на элементе управления
 
Ясно, благодарю.
Искажение шрифта на элементе управления
 
не помогает, вот пример с 2003 экселя (это еще с увеличенным шрифтом, с мелким вообще фарш)
Искажение шрифта на элементе управления
 
Если поместить лебу на лист, шрифт в ней искажается. При клике на нее шрифт сглаживается и становится нормальным. Все бы хорошо, но в 2003 экселе все это дело выглядит ужасно. В моем 2007 вполне сносно, скрин с 2007 прилагаю. Можно с этим справиться?

Страницы: 1 2 3 4 След.
Наверх