Страница: 1 |
Страница: 1 |
Вопрос: OCHEN' NUJNA POMOSH
Добавлено: 10.06.05 16:34
Автор вопроса: Ramil | Web-сайт:
Mne nado udalit cifru 5 katoraya naxoditsya v
Range("a1") v knige book1.xls katoraya naxoditsya v C:\
V drugom knige nado zdelat' knopku katoraya udalit etu cifru ... 5 ne otkrivaya book1.xls i saxronit book1.xls
"Ne otkrivaya" fayl udalit ... i saxronit.
Pomogite pojaluysta (mne ochen' nado)
Ответы
Всего ответов: 12
Номер ответа: 1
Автор ответа:
mc-black
ICQ: 308-534-060
Вопросов: 20
Ответов: 1860
Web-сайт:
Профиль | | #1
Добавлено: 10.06.05 21:11
Ниччего не понятно, как это можно: не открывая книгу чего-то в ней удалить и её сохранить... Ты ты определился для начала для чего это тебе нужно и чего этим требуется добиться? Желательно с примером и с описанием, что требуется, саму суть, цель...
Номер ответа: 2
Автор ответа:
sergee
ICQ: 345653131
Вопросов: 10
Ответов: 23
Web-сайт:
Профиль | | #2
Добавлено: 11.06.05 03:51
Внести изменения в книгу не открывая ее не получится, но можно сделать так чтобы вся работа с книгой прошла таким образом что пользователю этого не будет видно (т.е. excel на экране не появится)... Может тебе это и надо?
Номер ответа: 3
Автор ответа:
Ramil
ICQ: 286597559
Вопросов: 13
Ответов: 25
Web-сайт:
Профиль | | #3
Добавлено: 11.06.05 10:07
Delo v tom chto faylov ochen' mnogo ...
Esli pri najatiya knopki programma budet otkrivat' falyi eto zaymyot ochen' mnogo vremeni ... 50 faylov.
Tem bolee u menya fayli ochen' dolgo soxranyayutsya Ne znayu pochemu ... esli kto znaet mojet i v etom pomojet ... ya odnajdi zdelal progu v etix knigax, ona otkrivala eti fayli delala izmeneniya i saxranyala ix, posle etogo u menya oni ochen' dolgo soxranyayutsya
A vo vtorix esli pri najatiya knopki budet otkrivat' vse eti 50 faylov eto toje mnogo vremeni zaymyot
Sergee To chto ti napisal moget mne prigoditsya ... mojesh napisat' primer ?
Esli eti fayli ne budut vidni polzivatelyu mne eto toje mojet prigoditsya ...
Pomogite rebyata esli mojno ... mne srochno nado zdelat' eto ... Sposibo.
Номер ответа: 4
Автор ответа:
sergee
ICQ: 345653131
Вопросов: 10
Ответов: 23
Web-сайт:
Профиль | | #4
Добавлено: 11.06.05 12:52
Dim exlBook As Excel.Workbook
Private Sub Button1_Click
exlDoc = New Excel.Application
'Открываем файл
exlBook = exlDoc.Workbooks.Open("c:\book.xls"
'Делает Excel видимым пользователю (False - невидимым)
exlDoc.Visible = True
'Тут допишешь код для разных действий с книгой
'Сохраняем книгу и закрываем Excel
exlBook.Save()
exlDoc.Quit()
End Sub
Номер ответа: 5
Автор ответа:
Ramil
ICQ: 286597559
Вопросов: 13
Ответов: 25
Web-сайт:
Профиль | | #5
Добавлено: 11.06.05 14:12
Spasibo otvet ... no etot ne rabotaet
exlDoc pochemuto oshibku vidayot
Номер ответа: 6
Автор ответа:
ActiveX
Вопросов: 0
Ответов: 73
Профиль | | #6
Добавлено: 12.06.05 04:24
Ramil, Если для Вас принципиально использовать именно предложенный вариант, то :
Dim xlAp As New Excel.Application
Dim xlWb As Excel.Workbook
Set xlWb = xlAp.Workbooks.Open("C:\Temp\Test.xls"
' здесь Ваши действия с рабочей книгой
xlWb.Close True
xlAp.Quit
Set xlWb = Nothing
Set xlAp = Nothing
End Sub
Однако достичь эффекта "невидимости действий" для пользователя можно всего лишь отключив обновление экрана :
' здесь Ваши действия с рабочей книгой :
' открытие, изменение данных, закрытие
Application.ScreenUpdating = True
Номер ответа: 7
Автор ответа:
Ramil
ICQ: 286597559
Вопросов: 13
Ответов: 25
Web-сайт:
Профиль | | #7
Добавлено: 13.06.05 14:52
Ya poprobival eto no ... chto to mne ponyatno ... po moemu ona otkrivaet no ne zakrivaet fayl ... potamu chto posle otogo ya xatel otkrit' i posmatret' poluchilos'li vsyo eto ... mne pishet chto fayl ispolzuetsya ... no pri etom mne ne pokazivaet fayl
Pojaluysta napishi mne s primerami ...
Номер ответа: 8
Автор ответа:
ActiveX
Вопросов: 0
Ответов: 73
Профиль | | #8
Добавлено: 13.06.05 18:55
Ramil, закрытие рабочей книги осуществляется с использованием метода Close, закрытие приложения осуществляется с использованием метода Quit. А весь пример уже опубликован (см. Sergee, ActiveX) и добавить вроде уже нечего, за исключением изменений в самой рабочей книге, но это целиком Ваша прерогатива.
Номер ответа: 9
Автор ответа:
Ramil
ICQ: 286597559
Вопросов: 13
Ответов: 25
Web-сайт:
Профиль | | #9
Добавлено: 14.06.05 12:23
Spasibo vam bolshoe . Ya zdelal vsyo.
Vi mojete otvetit' mne na odin vopros ?
A mojno zdelat' izmeneniya v knige ne otkrivaya ego ?
Номер ответа: 10
Автор ответа:
Ramil
ICQ: 286597559
Вопросов: 13
Ответов: 25
Web-сайт:
Профиль | | #10
Добавлено: 14.06.05 12:39
Dim xlAp As New Excel.Application
Dim xlWb As Excel.Workbook
Set xlWb = xlAp.Workbooks.Open("C:\Test.xls"
Application.ScreenUpdating = False
'Zdes' ya pishu to chto mne nado zdelat' s otkritoy knigoy
For i = 1 To 50
z = i
Worksheets(z).Select
Range("a1".Select
Selection.ClearContents
Next i
xlWb.Close True
xlAp.Quit
Set xlWb = Nothing
Set xlAp = Nothing
End Sub
U menya ne poluchaetsya
Номер ответа: 11
Автор ответа:
ActiveX
Вопросов: 0
Ответов: 73
Профиль | | #11
Добавлено: 16.06.05 00:14
Ramil, я предложил использовать ScreenUpdating исключительно в качестве альтернативного варианта, т.е. вариант Sergee Or ScreenUpdating :
Dim iCount As Integer
Application.ScreenUpdating = False
With Workbooks.Open("C:\Test.xls"
If .Worksheets.Count < 50 Then
MsgBox "В рабочей книге " & .Name & " меньше 50 рабочих листов", 16, "Error"
Else
For iCount = 1 To 50
.Worksheets(iCount).Range("A1".ClearContents
Next
End If
.Close True
End With
Application.ScreenUpdating = True
End Sub
Номер ответа: 12
Автор ответа:
Ramil
ICQ: 286597559
Вопросов: 13
Ответов: 25
Web-сайт:
Профиль | | #12
Добавлено: 16.06.05 11:37
ActiveX Spasibo vam bolshoe ...
vi mne ochen' pomogli.