powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите, кто сможет!!!
85 сообщений из 85, показаны все 4 страниц
Помогите, кто сможет!!!
    #32207740
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Что подправить в коде для того, чтобы данные копировались не в сторонний документ EXCEL, а во встроенный в форму объект EXCEL???
Помогите, чем сможете!!!

Dim rst As DAO.Recordset
Dim XL As New Excel.Application
Dim x As Integer
Set rst = CurrentDb.OpenRecordset("table")

XL.Workbooks.Open "c:\1.xls" 'наверное это не нужно
XL.Worksheets(1).Select
rst.MoveFirst
x = 5

While Not rst.EOF

XL.Range("A" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Field1").Value
XL.Range("B" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Field2").Value
XL.Range("C" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Field3").Value
XL.Range("D" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("ÄField4").Value
XL.Range("E" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Field5").Value
XL.Range("F" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Field6").Value
XL.Range("G" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Field7").Value
XL.Range("H" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Field8").Value

x = x + 1
rst.MoveNext
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207742
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Должно получиться что-то такое:

Set какаятоизпеременных = Forms!MyForm!MyControl.Object
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207743
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо! Сейчас попробую...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207745
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Хм....
Сделал так:
Set XL = Forms!Форма1!ex.Object

Ошибка: Object doesn't support this property or method

Выделяет эту строку:
XL.Range("A" & CStr(x) & "").Select
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207748
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А если описать переменную как Excel.Worksheet?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207751
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XL.Worksheets(1).Select: Method or data member not found :(
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207757
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Так естественно. Как у воркшита может быть воркшит? Это все надо переделать (если только мы на правильном пути, в чем я пока не уверен).

Set XL = ...Worksheets(1)
XL.Select
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207758
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Даже не надо Set.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207760
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Видимо надо так:
Dim XL As New Excel.OLEObject
Но все равно проблема
XL.Worksheets(1).Select: ActiveX component can't create object
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207762
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Если New, то он не будет привязан к нужному контролу на форме.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207764
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Точно
И наконец :):
Object variable or With block variable not set
....
set XL = ???
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207766
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Set XL = Forms!Форма1!ex.Object - это правильно.

Вопрос, как ее описать. В крайнем случае можно попробовать As Object, но потом все равно надо понять, что это за объект и как к нему обращаться дальше.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207767
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А может возможно создать SQL запрос на основе:
x = 5

While Not rst.EOF

XL.Range("A" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Ðåô ¹").Value
XL.Range("B" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Íàèìåíîâàíèå").Value
XL.Range("C" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("ÔÈÎ").Value
XL.Range("D" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Äàòà").Value
XL.Range("E" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Âàëþòà").Value
XL.Range("F" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Ïðèõîä").Value
XL.Range("G" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Ðàñõîä").Value
XL.Range("H" & CStr(x) & "").Select
XL.ActiveCell.Formula = rst.Fields("Ýêâèâàëåíò").Value

x = x + 1
rst.MoveNext

Wend

И поставить его как источник данных для объекта?!
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207768
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Set XL = Forms!Ôîðìà1!ex.Object: Type mismatch
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207769
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Моя думай, что это не есть возможный подход.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207770
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Type mismatch - это при каком варианте описания?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207771
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
ИДЕЯ!!! По-моему, нам сейчас ничего не решить. Утро вечера мудренее. Утром в форум придут умные люди и сразу скажут всё, что о нас думают.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207772
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
:)
Может тогда использовать что-нибудь вроде CreateObject(Excel.Application) для формы? Или ето нельзя?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207774
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
CreateObject - это тот же эффект, что и со New.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207775
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim rst As DAO.Recordset
Dim XL As Excel.OLEObject
Dim x As Integer
Set rst = CurrentDb.OpenRecordset("cash")
Set XL = Forms!Форма1!ex.Object ' Type mismatch

XL.Worksheets(1).Select
rst.MoveFirst
x = 5
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207776
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Все-таки предлагаю Dim XL As Object. Я пошел спать. Спокойной ночи мне...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207777
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо! good night
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207810
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Саныч ты ивриту также учишь?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207892
Alexus12
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как идея, не как решение:
Сохранить в файл принудительно
Открыть файл, заменить что надо
Выйти с сохранением
Обновить
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207893
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Чего???? :))
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207894
VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim rst As DAO.Recordset

2VsevolodV
пример переноса данных в Excel
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
Dim iCols as integer
Dim xlapp As New Excel.Application 
Set rst = CurrentDb.OpenRecordset( "table" ) 
rst.movefirst
xlapp.workbooks.add
'формируем заголовки колонок
For iCols = 0 to rs.Fields.Count - 1
    with xlapp.Cells(1, iCols + 1)
          .Value = rs.Fields(iCols).Name
          'форматируем заголовок.
          with .Font                 
                 .Name= "Arial" 
                 .Bold=True
                 .Size= 10 
          end with 
    end with
Next icols
'Копируем рекордсет начиная с ячейки А2=Cells(2,1)
xlapp.Range("A2").CopyFromRecordset rst
'Далее делаем то что хотим
..........
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207903
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я в EXCEL уже понял как переносить. Не ясното, как перенести ето все в объект EXCEL.sheets.8 на форме!!!???
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32207924
RVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А к чему такой геморрой???
Вы из Accessа тащите данные в Excel и потом показываете их
опять из Accessа!!!!!!!
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32208051
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 вадя:

В чем вопрос - учу ли я также и ивриту или учу ли я ивриту так же?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32208337
eGorkaBy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
попробуйте
Dim XLW As Excel.Workbook
Set XLW = Forms!Форма1!ex.Object
...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32208387
Фотография Senin Viktor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
насколько я понял - на форме отображается лист екцеля из файла. Надо и обновлять этот файл екцеля, а на форме делать Refresh, что бы отобразить изменения. Тогда все ранее приведенные кода будут работать.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209038
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Продолжаю свой топик :)
Объясните, пожалуйста, ПОЧЕМУ не работает СopyFromRecordset???

XL.Range("A2").CopyFromRecordset rst ' Здесь ошибка
Ошибка: Class does not suppor Automation or does not support expected interface

P.S: OLE Automation подключена :)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209042
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2Саныч

твое терпение из обучения ивриту или ?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209045
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 вадя:

Наоборот. Мое обучение и тому, и сему - из терпения. :^)

Но вообще, действительно начинаешь удивляться, когда сам понимаешь, а собеседник никак не может понять.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209046
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rst - это ADO-рекордсет или DAO-рекордсет?
Для CopyFromRecordset должен быть ADO
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209051
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
я это сам только что на другом форуме нашел :))
Спасибо! Сейчас попробую....
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209059
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Все равно таже ошибка :((

Dim iCols As Integer
Dim xlapp As New Excel.Application
Set rst = CurrentDb.OpenRecordset("çàêàçû")
rst.MoveFirst
xlapp.Workbooks.Add

For iCols = 0 To rst.Fields.Count - 1
With xlapp.Cells(1, iCols + 1)
.Value = rst.Fields(iCols).Name

With .Font
.Name = "Arial"
.Bold = True
.Size = 10
End With
End With
Next iCols

xlapp.Range("A2").CopyFromRecordset rst

HELP
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209060
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Еще бы не та же
CurrentDb.OpenRecordset("çàêàçû") - это видимо все-таки DAO-рекордсет. А нужно ADO
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209065
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо! Ура! Все заработало :))

Dim rst As New ADODB.Recordset
Dim iCols As Integer
Dim xlapp As New Excel.Application
rst.Open "Çàêàçû", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly

rst.MoveFirst
xlapp.Workbooks.Add
xlapp.Visible = True
For iCols = 0 To rst.Fields.Count - 1
With xlapp.Cells(1, iCols + 1)
.Value = rst.Fields(iCols).Name

With .Font
.Name = "Arial"
.Bold = True
.Size = 10
End With
End With
Next iCols

xlapp.Range("A2").CopyFromRecordset rst

Крайне признателен :))
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209067
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
И, кстати, может быть кто-нибудь сможет подсказать как эти же данные вывести не в самом EXCEL, а во встроенном в форму объекте Excel.sheet.8
Это мне нужно, что бы не привлекать сторонние файлы. Просто в EXCEL существует больше возможностей фильтрации даннных!

Help me if u can, pls :)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209069
VIG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Выдержка из Office 2000 documentation

CopyFromRecordset Method
Copies the contents of an ADO or DAO Recordset object onto a worksheet, beginning at the upper-left corner of the specified range. If the Recordset object contains fields with OLE objects in them, this method fails.
Так что должен работать и с DAO( Если конечно можно верить микрософту) и на сколько я помню изначально он на DAO и был расчитан.Так что очень странно господа.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209071
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Но то, что не работает, в этом уверен на 89,5% :)

А что на счет заполнения этими данными объекта Excel.sheet.8 на форме??
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209088
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну кто-то же должен знать?! :(
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209091
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
А я не понял. В посте от 22:40 где указывается, в какой файл писать? Или оно там не в файл пишет?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209096
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Новая версия :)

Dim rst As New ADODB.Recordset
Dim iCols As Integer
Dim xlapp As New Excel.Application
rst.Open "cash", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly
rst.MoveFirst
xlapp.Workbooks.Open ("c:\cash.xls")
xlapp.Visible = True
For iCols = 0 To rst.Fields.Count - 1
With xlapp.Cells(4, iCols + 1)
.Value = rst.Fields(iCols).Name

With .Font
.Name = "Arial"
.Bold = True
.Size = 10
End With
End With
Next iCols
xlapp.Range("A5").CopyFromRecordset rst
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209097
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
rst.MoveFirst забыл убрать :) типа тоже ненадо
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209103
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот что я деляю

Me.ex.SetFocus
Dim rst As New ADODB.Recordset
Dim XL As Excel.Application ' видимо проблема в этом...
Set XL = Forms!Форма1!ex.Object

rst.Open "cash", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly

XL.Range("A5").CopyFromRecordset rst


HELP pls

Может есть другие способы?!
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209108
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>Dim XL As Excel.Application ' видимо проблема в этом...
>Set XL = Forms!Форма1!ex.Object
Dblbvj/// Ns ujdjhbim gthtvtyyjq мля... птичку поставил и забыл... Я имел в виду:
Видимо... Ты говоришь переменной что она ссылается на приложение ексель, а пихаешь в нее ссылку на контрол. И системе глубоко похр че в этом контроле, главное что не ексель... Попробуй (для начала) сделать так:
Dim XL As control
Set XL = Forms!Форма1!ex.Object
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209109
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ой мля...
>Set XL = Forms!Форма1!ex .Object
так вон-оно чё... был не прав...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209110
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Видимо там какой-нибудь Workbook лежит. или что-нибудь похожее
Но никак не excel.exe
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209116
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дак че делать то а? :))
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209117
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
судя по названию Excel.sheet.8 там Worcksheet :)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209120
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну и делай тогда в Dimе объявление переменной как ВоркЩит...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209121
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Типа я не совсем пень :))

Me.ex.SetFocus
Dim rst As New ADODB.Recordset
Dim XL As Excel.Worksheet
Set XL = Forms!Ôîðìà1!ex.Object 'здесь Type mismatch

rst.Open "cash", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly

XL.Range("A5").CopyFromRecordset rst
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209122
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ôîðìà1 = Форма1 :)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209123
Фотография Лох Позорный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ну дык и делай
Код: plaintext
1.
Dim xlShit As Excel.WorkSheet
Set xlShit = Forms!Форма!Контрол.Object

и работай с ним как с Worksheet'ом
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209124
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не... Слюшай сюда... Объяляй в Диме обычный контрол, затем присваивай этому переменной ссылку на контрол с Екселевским активиксом, а затем делай так:
Переменная.ВоркЩит.БлаБлаБля = ///

//чё лезу? забыл када с екселем последний раз работал...
Сорри...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209125
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сорри, но контрол это что?
если это Excel.sheet.8, то "ex" это его name
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209126
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
во блин :) Екселевский активикс? :)
сорри я в VBA только неделю разбираюсь...
если можешь, то сделай примерный вид кода pls...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209127
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
это кому?
Кста, Всеволод В... Ну нажми в ВБА редакторе Ф2, набери там Ексель (по англицки) и посмори какие у него свойства и методы... Через них доберись до воркщит... Самому лениво (извини... не доконца трезв и спать уже хочется...)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209128
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ok ok Спасибо за участие!!!
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209130
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Значит, так. Когда сажаешь контрол на форму, он называется Microsoft Excel Worksheet. Однако если описать его как Object и взять от него typename, то он возвращает "workbook", и это и есть истина. Соответственно, если нужен Worksheet, то писать надо так:

Dim o As Excel.Worksheet
Set o = Me!OLEUnbound3.Object.Worksheets(1)
o.Cells(2, 3) = o.Cells(2, 3) + 1

У меня это работает, значения селлов он запоминает. Правда, на экране он мне их почему-то не показывает, но мне с этим разбираться лениво, у автора топика с этом вроде все в порядке.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209133
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
посморел... делай:

Dim a As Spreadsheet
Set a = Ссылка на контрол

нажимай "а" и "точка" и увидешь все то, чё оно может делать... удачев...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209134
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а у меня называется Спридщит... Хотя сущность - щит - так и осталась
Саныч, пошел я переодеваться ;)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209135
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Нуф, мы с тобой друг друга поняли. :^)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209138
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Володь, ага... Поняли... (дальше отмаз): А вот понял ли нас Всеволод В? :)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209139
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
у меня: класс OLE: Microsoft Excel
класс: Excel.sheet.8
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209141
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Работает вот что:

Me.ex.SetFocus
Dim rst As New ADODB.Recordset
Dim XL As OWC10.Spreadsheet
Set XL = Forms!Ôîðìà1!ex.Object

rst.Open "cash", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly

XL.Range("1:15000").CopyFromRecordset rst

Но это не совсем то, что нужно - там ущербные возможности автофильтра...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209142
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Ваня, все нас поняли. И это пилёха.

Всеволод, поступай как я написал. Оно работает.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209143
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
единственное чего я не понял: что такое
Set o = Me!OLEUnbound3.Object.Worksheets(1) :)

что-то тяжелое :)
это и есть мой Excel.sheet.8 ????
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209144
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
кстати, что такое пилёха? :)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209145
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
:^) Куда девался мой воздушный шарик и откуда взялась эта тряпочка... Да, это оно. Просто OLEUnbound3 - это у меня так контрол назвался.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209146
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Не удается найти поле OLEUnbound3, указанное в выражении"
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209147
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Пилёха - это плохо. Если его надлежащим образом произнести.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209148
Фотография Нуф-нуф
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Володь, в етой жизни много плёхого случается... У мя сени на машине тормоз отказал ну напрочь! Педалька провалилась так и там и осталась... Хорошо что еще во время маневров случилось - ручником тормозил... А за флейм... За флейм нас простят надеюсь... Ну а и не простят? Будут думать плохо... что не приятно... не приятно, но не смертельно... надеюсь...
Всем ночи...
//пшел спать
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209149
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я пень
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209150
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Всеволод, я же написал, что OLEUnbound3 - это у меня так контрол называется.

Нуф, ты так не шути. У тебя машина когда последний раз техосмотр проходила? И кстати, что это за маневры?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209151
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Me.ex.SetFocus
Dim rst As New ADODB.Recordset
Dim o As Excel.Worksheet
Set o = Me!ex.Object.Worksheets(1)
o.Cells(2, 3) = o.Cells(2, 3) + 1

rst.Open "cash", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly

o.Range("A1").CopyFromRecordset rst


"Method 'CopyFromRecordset' of object 'Range' failed"

но записи копирует :)
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209152
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
:^) Ну так положи на него On Error Resume Next...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209153
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Кстати,

o.Cells(2, 3) = o.Cells(2, 3) + 1

- это тоже было нужно только для моих экспериментов...
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209154
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это понятно, но это как-то не этично...
типа в чем там дело?
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209156
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
последние штрихи: скажи, пожалуйста, как теперь удалить скопированную информацию???
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209157
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Удалить откуда? Из воркшита? Аналогичным образом - пройтись по всем заполненным клеткам и занести в них... уж я не знаю что. Скажем, Null или пустую строку... А может и одна команда для этого есть. Я не знаю. :^) Все, отрубаюсь от сети. Дома-то Интернет платный, как-никак... Баюшки.
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209158
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо БОЛЬШОЕ!!!
...
Рейтинг: 0 / 0
Помогите, кто сможет!!!
    #32209159
Фотография Vsevolod V
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ДЛЯ ЛЮБОЗНАТЕЛЬНЫХ:

Копирование информации в объект Excel.Worksheet на форме:
Private Sub btn1_Click()
On Error GoTo 6
Me.ex.SetFocus
Dim rst As New ADODB.Recordset
Dim o As Excel.Worksheet
Set o = Me!ex.Object.Worksheets(1)

rst.Open "cash", CurrentProject.Connection, adOpenForwardOnly, adLockReadOnly

o.Range("A5").CopyFromRecordset rst

6:
Exit Sub
End Sub

Отчистка Worcksheet:
Private Sub btn2_Click()
On Error GoTo 6
Me.ex.SetFocus
Dim rst As New ADODB.Recordset
Dim o As Excel.Worksheet
Set o = Me!ex.Object.Worksheets(1)

o.Range("5:15000").Clear
6:
Exit Sub
End Sub
...
Рейтинг: 0 / 0
85 сообщений из 85, показаны все 4 страниц
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Помогите, кто сможет!!!
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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