powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / макрос - курс валют
23 сообщений из 23, страница 1 из 1
макрос - курс валют
    #36713989
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Помогите с макросом:

надо чтобы тянулись откуда угодно тек курсы в две ячейки
дол и евро
как вариант с http://cbr.ru/
...
Рейтинг: 0 / 0
макрос - курс валют
    #36714027
Фотография vlth
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pepel222,

Для этого не нужен макрос, достаточно встроенных средств Excel
(Данные->Импорт внешних данных->Создать веб-запрос...
или в 2007: Данные->Получить внешние данные->Из Веба)
...
Рейтинг: 0 / 0
макрос - курс валют
    #36714315
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pepel222Помогите с макросом:

надо чтобы тянулись откуда угодно тек курсы в две ячейки
дол и евро
как вариант с http://cbr.ru/на planetaexcel есть такой пример
...
Рейтинг: 0 / 0
макрос - курс валют
    #36714595
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да видел этот пример
тока есть нюанс, сделав такой запрос он меняет ячейки как по размерам так и по шрифту
а мне нужно чтобы четко вставлялись и ничего не меняли
а также было б супер
к примеру, на одном листе есть запрос и он вытащил курсы, на след день открыв файл
на след листе он делает запрос и дает новый курс, в свою очередь на пред листе он оставлял бы вчер инфо

реал такое сделать?
...
Рейтинг: 0 / 0
макрос - курс валют
    #36715564
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot pepel222]да видел этот пример
тока есть нюанс, сделав такой запрос он меняет ячейки как по размерам так и по шрифту
а мне нужно чтобы четко вставлялись и ничего не меняли
quot]
сделайте ссылки с другого форматированного по вкусу листа на эти ячейки
[quot pepel222]
а также было б супер
к примеру, на одном листе есть запрос и он вытащил курсы, на след день открыв файл
на след листе он делает запрос и дает новый курс, в свою очередь на пред листе он оставлял бы вчер инфо
quot] - а зачем мусор копить? Ведь всегда можно запросить курс на любую дату.
...
Рейтинг: 0 / 0
макрос - курс валют
    #36716809
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pepel222да видел этот пример
тока есть нюанс, сделав такой запрос он меняет ячейки как по размерам так и по шрифту
а мне нужно чтобы четко вставлялись и ничего не меняли
а также было б супер
к примеру, на одном листе есть запрос и он вытащил курсы, на след день открыв файл
на след листе он делает запрос и дает новый курс, в свою очередь на пред листе он оставлял бы вчер инфо

реал такое сделать?да, но не советую совсем ставиь макрос на Before_open
послезавтра смениться структура cbr.ru (или поменяется версия офиса, и книга будет тупить)

как орагнизовать то, что вы хотите? в двух словах - записать макрореордером последовательность действий, описанную в первом посте...
...
Рейтинг: 0 / 0
макрос - курс валют
    #36717413
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PlanB,

согласен, самый простой выход
спс
...
Рейтинг: 0 / 0
макрос - курс валют
    #36719257
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pepel222PlanB,

согласен, самый простой выход
спса есть ещё сложный? =)))
...
Рейтинг: 0 / 0
макрос - курс валют
    #36719376
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вопрос такой
нарисовал данный макрос в кнопку

реально ли сделать так, чтобы данные можно было получать тока 1-2 раза например, чтобы не было возможности много раз обновлять?
...
Рейтинг: 0 / 0
макрос - курс валют
    #36720581
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
Private Sub CommandButton2_Click()
    With ActiveSheet.QueryTables.Add(Connection:="URL;http://www.yandex.ru", _
        Destination:=Range("B37"))
        .Name = "www.yandex.ru_1"
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .BackgroundQuery = True
        .RefreshStyle = xlOverwriteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod =  0 
        .WebSelectionType = xlSpecifiedTables
        .WebFormatting = xlWebFormattingNone
        .WebTables = "10"
        .WebPreFormattedTextToColumns = True
        .WebConsecutiveDelimitersAsOne = True
        .WebSingleBlockTextImport = False
        .WebDisableDateRecognition = False
        .WebDisableRedirections = False
        .Refresh BackgroundQuery:=False
    End With
    Columns("B:C").Select
    Selection.ColumnWidth =  16 
    Range("C38").Select
    Selection.NumberFormat = "[$$-409]#,##0.0000"
    Range("C39").Select
    Selection.NumberFormat = "[$€-2] #,##0.0000"
End Sub

создал такой макрос, но в режиме общего доступа не работает выдает ошибку, как обойти?
...
Рейтинг: 0 / 0
макрос - курс валют
    #36720636
Фотография -O_o-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pepel222,
уберите слово Private. должно работать...
...
Рейтинг: 0 / 0
макрос - курс валют
    #36721832
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
-O_o-pepel222,
уберите слово Private. должно работать...ага, ещё всё в модуль надо запихать!
...
Рейтинг: 0 / 0
макрос - курс валют
    #36721833
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
PlanB-O_o-pepel222,
уберите слово Private. должно работать...ага, ещё всё в модуль надо запихать!говорю же, просмотрите надстройку plex, там всё есть...
...
Рейтинг: 0 / 0
макрос - курс валют
    #36722807
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
-O_o-,

Убрал, не работает
У файла стоит "доступ к книге" чтобы могли изменять несколько пользователей, т.е. общий доступ
...
Рейтинг: 0 / 0
макрос - курс валют
    #36722815
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PlanB-O_o-pepel222,
уберите слово Private. должно работать...ага, ещё всё в модуль надо запихать!

куда именно?
...
Рейтинг: 0 / 0
макрос - курс валют
    #36722866
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Для инфо
выскакивает сообщение:
Примечание нельзя добавить в режиме совместного доступа.
...
Рейтинг: 0 / 0
макрос - курс валют
    #36724153
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pepel222PlanB-O_o-pepel222,
уберите слово Private. должно работать...ага, ещё всё в модуль надо запихать!

куда именно?alt+f11-ПКМ на Tree-Insert Module
и вот именно в него =)
...
Рейтинг: 0 / 0
макрос - курс валют
    #36725012
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PlanB,

добавил в модуль, но всё равно выдает сообщение: "Примечание нельзя добавить в режиме совместного доступа."
...
Рейтинг: 0 / 0
макрос - курс валют
    #36725022
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может это из-за того что я тащу импорт внешних данных с сайта
а в общем доступе (когда могут работать несколько пользователей) нет такой фишки?

что скажете?
...
Рейтинг: 0 / 0
макрос - курс валют
    #36725171
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Private Sub CommandButton1_Click()
    Dim sURI As String
      Dim oHttp As Object
       Dim htmlcode, outstr As String
       Dim inpdate As Date
       Dim d, m, y As Integer
  
        inpdate = CDate(InputBox("Введите дату в формате ДД.ММ.ГГГГ", _
           "Курс доллара", Date))
     d = Format(inpdate, "dd")
    m = Format(inpdate, "mm")
     y = Format(inpdate, "yyyy")
      sURI = "http://cbr.ru/currency_base/daily.aspx?C_month=" & m & "&C_year=" _
                    & y & "&date_req=" & d & "%2F" & m & "%2F" & y
       On Error Resume Next
      Set oHttp = CreateObject("MSXML2.XMLHTTP")
     If Err.Number <>  0  Then
         Set oHttp = CreateObject("MSXML.XMLHTTPRequest")
    End If
       On Error GoTo  0 
      If oHttp Is Nothing Then
          Exit Sub
     End If
      oHttp.Open "GET", sURI, False
       oHttp.Send
      htmlcode = oHttp.responseText
       outstr = Mid(htmlcode, InStr( 1 , htmlcode, "USD") +  87 ,  7 )
      Set oHttp = Nothing
      outstr = Replace(outstr, ",", ".")
      ActiveCell.Value = outstr
End Sub

сделал такой макрос, но как сделать так чтобы он вставлял курс Доллары в нужную ячейку а не в ту, которую поставил курсор?
...
Рейтинг: 0 / 0
макрос - курс валют
    #36725892
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вопрос снялся
но появился второй
есть 2 кнопки
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Private Sub CommandButton1_Click()
    Dim sURI As String
      Dim oHttp As Object
       Dim htmlcode, outstr As String
       Dim inpdate As Date
       Dim d, m, y As Integer
  
        inpdate = CDate(InputBox("Ââåäèòå äàòó â ôîðìàòå ÄÄ.ÌÌ.ÃÃÃÃ", _
           "Êóðñ äîëëàðà", Date))
     d = Format(inpdate, "dd")
    m = Format(inpdate, "mm")
     y = Format(inpdate, "yyyy")
sURI = "http://WWW.cbr.ru/currency_base/daily.aspX?C_month=" & m & "&C_year=" & y & "&date_req=" & d & "%2F" & m & "%2F" & y
       On Error Resume Next
      Set oHttp = CreateObject("MSXML2.XMLHTTP")
     If Err.Number <>  0  Then
         Set oHttp = CreateObject("MSXML.XMLHTTPRequest")
    End If
       On Error GoTo  0 
      If oHttp Is Nothing Then
          Exit Sub
     End If
      oHttp.Open "GET", sURI, False
       oHttp.Send
      htmlcode = oHttp.responseText
       outstr = Mid(htmlcode, InStr( 1 , htmlcode, "USD") +  87 ,  7 )
      Set oHttp = Nothing
      outstr = Replace(outstr, ",", ".")
      Range("a1") = outstr
End Sub

и

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
Private Sub CommandButton2_Click()
    Dim sURI As String
      Dim oHttp As Object
       Dim htmlcode, outstr As String
       Dim inpdate As Date
       Dim d, m, y As Integer
  
        inpdate = CDate(InputBox("Ââåäèòå äàòó â ôîðìàòå ÄÄ.ÌÌ.ÃÃÃÃ", _
           "Êóðñ äîëëàðà", Date))
     d = Format(inpdate, "dd")
    m = Format(inpdate, "mm")
     y = Format(inpdate, "yyyy")
sURI = "http://WWW.cbr.ru/currency_base/daily.aspX?C_month=" & m & "&C_year=" & y & "&date_req=" & d & "%2F" & m & "%2F" & y
       On Error Resume Next
      Set oHttp = CreateObject("MSXML2.XMLHTTP")
     If Err.Number <>  0  Then
         Set oHttp = CreateObject("MSXML.XMLHTTPRequest")
    End If
       On Error GoTo  0 
      If oHttp Is Nothing Then
          Exit Sub
     End If
      oHttp.Open "GET", sURI, False
       oHttp.Send
      htmlcode = oHttp.responseText
       outstr = Mid(htmlcode, InStr( 1 , htmlcode, "EUR") +  81 ,  7 )
      Set oHttp = Nothing
      outstr = Replace(outstr, ",", ".")
      Range("b1") = outstr
End Sub

они по отдельности тянут курсы ДОЛ и ЕВРО соот-но, как сделать это в одну кнопку?
...
Рейтинг: 0 / 0
макрос - курс валют
    #36726155
PlanB
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
думаю, разберетесь...
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub CommandButton1_Click()
    Call AAA
    Call BBB
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub AAA()
    MsgBox "111111111111111111"
End Sub
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
Sub BBB()
    MsgBox "222222222222222222"
End Sub
...
Рейтинг: 0 / 0
макрос - курс валют
    #36726375
pepel222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PlanB,

вопрос закрылся
спс
сделал немного по другому ;)
...
Рейтинг: 0 / 0
23 сообщений из 23, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / макрос - курс валют
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]