Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.144.233.150] |
|
Сообщ.
#1
,
|
|
|
Всем Здравия!
Нашел код в инете, но не понятно откуда берётся MSCOMM1. Именно на нем возникает ошибка из-за его отсутствия. Есть только MSComLib в котором иные свойства. Строка DefInt A-Z инвалид. Работаю на excel 2016. Win7 64 Библиотека MSCOMM32.OCX подключена и зарегина "kjljvjjjoquqmjjjvpqqkqmqykypoqjquoun". Подозреваю, что возможно в Public еще что-то надо рисануть, но вот что????? Option Explicit DefInt A-Z Dim CancelFlag As Boolean Private Sub CancelButton_Click() CancelFlag = True CancelButton.Enabled = False End Sub Private Sub DialButton_Click() Dim Number$ On Error GoTo Err_click Number$ = Selection.Value If Number$ = "" And Not IsNumeric(Number$) Then Exit Sub DialButton.Enabled = False CancelButton.Enabled = True Status = "Dialing - " + Number$ Dial Number$ DialButton.Enabled = True CancelButton.Enabled = False Err_click: End Sub Private Sub Dial(Number$) Dim DialString$, FromModem$, dummy ' AT is the Hayes compatible ATTENTION command and is required to send commands to the modem. ' DT means "Dial Tone." The Dial command uses touch tones, as opposed to pulse (DP = Dial Pulse). ' Numbers$ is the phone number being dialed. ' A semicolon tells the modem to return to command mode after dialing (important). ' A carriage return, vbCr, is required when sending commands to the modem. DialString$ = "ATDP" + Number$ + ";" + vbCr ' Communications port settings. ' Assuming that a mouse is attached to COM1, CommPort is set to 2 MSComm1.CommPort = 4 MSComm1.Settings = "9600,N,8,1" ' Open the communications port. On Error Resume Next MSComm1.PortOpen = True If Err Then MsgBox "COM2: not available. Change the CommPort property to another port." Exit Sub End If ' Flush the input buffer. MSComm1.InBufferCount = 0 ' Dial the number. MSComm1.Output = DialString$ ' Wait for "OK" to come back from the modem. Do dummy = DoEvents() DoEvents ' If there is data in the buffer, then read it. If MSComm1.InBufferCount Then FromModem$ = FromModem$ + MSComm1.Input ' Check for "OK". If InStr(FromModem$, "OK") Then ' Notify the user to pick up the phone. Beep MsgBox "Please pick up the phone and either press Enter or click OK" Exit Do ' Status = "Dialing - " + FromModem$ + " - " + Number$ ElseIf InStr(FromModem$, "BUSY") Then Disconnect Call Dial(Number$) Exit Sub ElseIf InStr(FromModem$, "Error") Then MsgBox "Error " + FromModem$ Exit Do End If End If ' Did the user choose Cancel? If CancelFlag Then CancelFlag = False Exit Do End If Loop Disconnect End Sub Private Sub DialButton_GotFocus() Cells(Selection.Row, Selection.Column).Select End Sub Private Sub Status_Click() On Error Resume Next DialButton.Enabled = True 'QuitButton.Enabled = False CancelButton.Enabled = True ' Disconnect the modem. MSComm1.Output = "ATH" + vbCr ' Close the port. MSComm1.PortOpen = False End Sub Public Sub Disconnect() ' Disconnect the modem. MSComm1.Output = "ATH" + vbCr ' Close the port. MSComm1.PortOpen = False End Sub |
Сообщ.
#2
,
|
|
|
Нашел проблему из-за чего все это.
Короче библиотика в Reference есть и галкой помечена, а в additional controls её нет почему-то. Ну и собственно вопрос стоит так: Из-за чего может отсутствовать доступ к выбору контрола в additional controls , хотя в Reference все есть? У когонить на 64 бит работала mscomm32.ocx? Есть ещё аналог вроде NETComm.ocx. hardandsoftware |
Сообщ.
#3
,
|
|
|
Поставил 32бит офис вместо 64, контрол стал виден на панели, но при перетаскивании на форму не ставится.
Пишет "Требуемый класс отсутствует в classfactory" На другом компе все ставится. Может кто в курсе в причинах сего? |
Сообщ.
#4
,
|
|
|
Звонилка DialUp в 2018 году? Я проснулся в семь утра и не заметил как мир превратился в утопию?
А по делу, это старые контролы, которые не поддерживаются более и не были сделаны их 64-битные версии, поэтому не поддерживаются в 64-битной версии офиса. Или использовать 32-битную версию офиса или искать альтернативные варианты |
Сообщ.
#5
,
|
|
|
Цитата Поставил 32бит офис вместо 64 Лучше поставь 32 битную винду! Столько проблем в 64! |
Сообщ.
#6
,
|
|
|
Цитата diel @ Звонилка DialUp в 2018 году? Я проснулся в семь утра и не заметил как мир превратился в утопию? А почему бы и не пуркуа па? Перловый скрипт на пару сотен строк и войсмопед заменяют астериксы и прочие сипы, войну с экстеншенами и проч. |