Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Другие темы раздела
VBA Найти среднее значение элементов второго столбца матрицы https://www.cyberforum.ru/ vba/ thread713612.html
найти среднее значение элементов 2-го столбца, максимальное значенне этих элементов и количество значений меньших 78. Вот что у меня получилось, но оно не работает чего-то, помогите пожалуйста ...
Обращение к файлам rtf из VBA Word для копирования содержимого VBA
Кто знает каким образом можно копировать части rtf файла в ворд? Как пример кусочек кода: fname = "C:\НАКАЗ.rtf" Set doc2 = ActiveDocument ActiveDocument.Content.Text = "" ...
VBA Автосортировка по указаному номеру столбца
Всем доброго времени суток. У меня возникла такая проблема. Не знаю как осуществить следующее. Есть файл эксель, там много столбцов. И есть ячейка. Если мы укажем в ячейке, к примеру 1, сортируется...
VBA Вставка относительных ссылок в формулу посредством переменных Добрый день. я который раз возвращаюсь к одной загвоздке в своем макросе и никак не могу ее решить. помогите пожалуйста. есть вырезка из кода: k = ActiveCell.Offset(-9, -5).Address(0, 0,... https://www.cyberforum.ru/ vba/ thread713425.html
VBA Построение диаграммы. Создание нового тега и ошибка "type mismatch" https://www.cyberforum.ru/ vba/ thread713324.html
Здравствуйте! После запуска макроса выдает ошибку run-time error 13 type mismatch в этом месте кода: X1 = Range(Workbooks(MyName).Worksheets(MyDannie).Cells(iRowi + 7, iClmj + 3),...
Поиск на листах и систематизация данных VBA
На "Лист1" в 1 столбце находится список организаций в столбец 2 и 3 должны копироваться данные со 2 и 3 листа. На 2 и 3 Лист выгружаются данные из разных программ 1С и ИМУС нужно что бы макрос...
VBA Переключение языка ввода в зависимости от столбца
Добрый день! Есть таблица из двух колонок. Как прописать макрос, который бы делал следующее?: 1. если курсор находится в первой колонке - язык ввода становится русским 2. если курсор находится...
VBA Получить метки дисков Есть форма для выбора диска, на который нужно сохранить отчет Excel. Т.к. очень часто нужно сохранить отчет на флешку, возникла необходимость выводить в ComboBox не только букву диска, но и его метку... https://www.cyberforum.ru/ vba/ thread713166.html
VBA Проверка на число в InputBox вызывает ошибку https://www.cyberforum.ru/ vba/ thread713125.html
a = InputBox("a") Do While Not IsNumeric(a) MsgBox "Ошибка" a = InputBox("a") Loop b = InputBox("b") Do While Not IsNumeric(b) MsgBox "Ошибка" b = InputBox("b") Loop
VBA Реализовать оповещение, если в заданный промежуток времени от адресата нет письма Как можно реализовать оповещение, если в заданный промежуток времени от адресата нет письма. К примеру есть адресаты с ящиками ввида: mail1@example.com mail2@example.com ............ https://www.cyberforum.ru/ vba/ thread713123.html
Заблокирован
19.08.2014, 17:23 0

Авторские программы, библиотеки, надстройки и шаблоны

19.08.2014, 17:23. Просмотров 177760. Ответов 234
Метки (Все метки)

Ответ

Настоящий браузер на VBA..

недавно столкнулся с такой проблемой, что мне понадобились статистические
сведения о запросах в яндексе и гугле..
так вот, собрал свой браузер для этих целей
если кому пригодится, пользуйтесь


Код модуля формы UserForm

Visual Basic
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
Option Explicit
 
Private Type rect
    Left As Long
    Top As Long
    Right As Long
    Bottom As Long
End Type
Private Declare Function GetWindowRect Lib "user32" (ByVal hWnd As Long, lpRect As rect) As Long
Private Declare Function GetClientRect Lib "user32" (ByVal hWnd As Long, lpRect As rect) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Private Declare Function GetSystemMetrics Lib "user32" (ByVal nIndex As Long) As Long
Public WithEvents cmm1 As CommandButton
Public WithEvents cmm2 As CommandButton
Public WithEvents cmm3 As CommandButton
Public WithEvents cmm4 As CommandButton
Public WithEvents cmm5 As CommandButton
Dim WithEvents cmb As ComboBox
Dim Brows As Object
Dim wx&, wy&, ww&, wh&, hWnd&, home$, f&, s$
 
Private Sub cmb_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
    With Brows.Object
        If KeyCode = 13 Then
            Debug.Print KeyCode
            If InStr(1, cmb.Text, "http", 1) = 0 Then
                .Navigate "https://www.google.ru/search?as_q=" & cmb.Text
            Else
                'Если текст поменялся, то запомнить новый адрес
                For f = 0 To cmb.ListCount - 1
                    If StrComp(cmb.Text, cmb.List(f), 1) = 0 Then Exit For
                Next
                If f = cmb.ListCount Then cmb.AddItem cmb.Text
                .Navigate cmb.Text
            End If
            KeyCode = 0
        End If
    End With
End Sub
 
Private Sub cmm5_Click()
    On Error Resume Next
    Brows.Object.stop
End Sub
 
Private Sub cmm4_Click()
    On Error Resume Next
    Brows.Object.Refresh
End Sub
 
Private Sub cmm3_Click()
    On Error Resume Next
    Brows.Object.GoForvard
End Sub
 
Private Sub cmm2_Click()
    On Error Resume Next
    Brows.Object.GoBack
End Sub
 
Private Sub cmm1_Click()
    On Error Resume Next
    Brows.Object.GoHome
End Sub
 
Private Sub ScrollBar1_Change()
 
End Sub
 
Private Sub UserForm_Initialize()
    Dim Left&, rect(1) As rect
    Application.DisplayAlerts = False
    wx = GetSystemMetrics(0): wy = GetSystemMetrics(1)
    Me.Move 0, 0, wx / 1.5, wy / 1.5
    Me.Caption = "Вэб-браузер на VBA ... © Антихакер32™"
    hWnd = FindWindow(vbNullString, Me.Caption)
    Call GetWindowRect(hWnd, rect(0))
    Call GetClientRect(hWnd, rect(1))
    ww = (rect(0).Right - rect(1).Right) / 2: ww = Me.Width - ww
    wh = (rect(0).Bottom - rect(1).Bottom): wh = Me.Height - wh
    Dim cmm As Object
    For f = 1 To 5
        s = "cmm" & f
        Call CallByName(Me, s, VbSet, Controls.Add("forms.CommandButton.1", s))
        With Me.Controls(s)
            .AutoSize = 1
            .Caption = Choose(f, "Домой", "Назад", "Вперед", "Обновить", "Стоп")
            .Left = Left: Left = Left + .Width
        End With
    Next
    Set cmb = Controls.Add("forms.ComboBox.1", "cmb")
    With cmb
        .Left = Left
        .Width = ww - Left
        .AddItem "http://yandex.ru/"
        .AddItem "http://google.ru/"
        .ListIndex = 0
    End With
 
    Set Brows = Controls.Add("Shell.Explorer.2", "Brows")
    With Brows
        .Move 0, cmm1.Height, ww, wh - cmm1.Top - cmb.Height
        .Object.Navigate cmb.Text
    End With
 
End Sub




Добавлено через 27 минут

Не по теме:

PS
Запускать желательно на 2003 офисе, но можно и на 2007-м, только надо выключить
все параметры безопасности, а вообще, если приложить фантазию
то теперь можно все что угодно делать с интернетом, например программно посылать
любые команды в окно браузера, скачивать и копипастить страницы..
ну всякое...

внес изменения теперь стартовая страница, Яндекс! :)
добавил кнопку остановки и убрал таймеры



Вернуться к обсуждению:
Авторские программы, библиотеки, надстройки и шаблоны
2
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
19.08.2014, 17:23
Готовые ответы и решения:

Программы на 1С и авторские права
На форуме много сильных программистов, полагаю, что кто-то пишет и отдельные программы. Интересует...

Полезные коды и авторские программы на Lisp
Расскажите, пожалуйста, что на лиспе пишите? вкратце, хотя бы. Очень интересно. Понятно, что...

Поменять авторские права в описании программы
Народ подскажите как поменять авторские права в описании программы, срочно надо. Пож-та

Где хранятся шаблоны во время выполнения программы?
Где хранятся шаблоны во время выполнения программы? и если у меня если: template<typename T>...

234
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.