napisał: trzebiatow postów: 21
umieszczony: 22 listopada 2005 16:45
|
|
Robert, Jesteś jeszcze większy. Pod MSO' 97 też działa.
Stokrotne dzięki.
ET. |
|
napisał: trzebiatow postów: 21
umieszczony: 20 listopada 2005 19:08
|
|
Sprawdziłem. Pod 2000 chodzi. Powinno też pójść pod 97. Jesteś Robert Wielki!!!
Dzięki
ET |
|
napisał: trzebiatow postów: 21
umieszczony: 20 listopada 2005 12:12
|
|
Kod niestety odporny na wiedzę...
Podpiąłem go do mojego Suba. Niestety burzy się już na samym początku. Wydał komunikat:"Compile error User-defined type not defined". Sprawdziłem bibliotekę na moim kompie. Mam plik MsWord9.olb w kat. Office.
Dziękuję bardzo za pomoc. Jesteś jedyny który miał coś w rej sprawie do powiedzenia. Chyba, że doznasz jakiejś iluminacji...
ET. |
|
napisał: Trebor postów: 1209
umieszczony: 20 listopada 2005 09:28
|
|
Hartu mi nie brakuje tylko umiejętności. Fakt z SendKeys makro zachowuje się dość chimerycznie. Spróbuj tego
Sub excel_word()
Dim appWD As Word.Application
Set appWD = CreateObject("Word.Application")
appWD.Documents.Open ("G:\Moje dokumenty\Umowa.doc")
appWD.Selection.WholeStory
appWD.Selection.Copy
Sheets("Umowa").Select
Cells.ClearContents
Range("A1").Select
ActiveSheet.Paste
appWD.Quit
Set appWD = Nothing
End Sub
Wymagana referencja do biblioteki Worda. |
|
napisał: trzebiatow postów: 21
umieszczony: 19 listopada 2005 21:45
|
|
Dzięki ci. W domu co prawda mam Officea 2000, ale podpiąłem twój kod i są schody. Makro Excel wyraźnie nie reaguje na "naciskane" klawisze ^A,^C i ^V. Masz jeszcze tyle hartu by przyjrzeć się temu?
Pozdrowienia z śnieżnej Gdyni;
ET. |
|
napisał: Trebor postów: 1209
umieszczony: 19 listopada 2005 20:45
|
|
Hej!!
Może by tak wykpić się od pisania mądrych procedur
Dim oDoc As Object
Set oDoc = GetObject("G:\Moje dokumenty\umowa.doc")
oDoc.Application.Visible = True
oDoc.Application.Activate
SendKeys "^{a}"
SendKeys "^{c}"
SendKeys "%{F4}"
Sheets("Umowa").Select
Cells.ClearContents
Range("A1").Select
SendKeys "^{v}" |
|
napisał: et postów: 1
umieszczony: 19 listopada 2005 15:30
|
|
Witam,
Mam problem: chcę skopiować z poziomu makra Excela dokument zapisany w Wordzie do arkusza Excela, bo znacznie łatwiej będzie mi wykonać dalsze operacje, w których dodatkowo uczestniczą jeszcze dwa inne dokumenty utworzone w Excelu. Więc napisałem
takie makro:
Sub Kop_umowy()
Dim oDoc As Object
Set oDoc = GetObject("D:\Apl_pp\umowa.doc")
oDoc.Application.Visible = True
oDoc.Application.Activate
oDoc.Application.Selection.WholeStory
(Tymczasem zaznaczenie wszystkiego nie działa w MS Office'97 - tylko działa
'w MS Office'2000)
oDoc.Application.Selection.Copy
Windows("Rob.xls").Activate
Sheets("Umowa").Select
Cells.Select
Selection.ClearContents
Range("A1").Select
ActiveSheet.Paste
End Sub
Kod jest wykonywany do wiersza:
oDoc.Application.Selection.WholeStory
Trafiając na ten wiersz VBA burzy się podając w komunikacie, że jakoby zmienna obiektowa nie została ustawiona.
Problem leży w tym, że temat robię dla firmy, która nie ma licencji na MS Office 2000, więc muszę go rozwiązać na bazie MS O'97.
Proszę o pomoc. Jak przejść przez WholeStory w MSO'97?
Serdecznie pozdrawiam,
ET |
|
wstecz 1 dalej wszystkich stron: 1
|