vbamania.pl
login:
hasło:
 
  *Rejestracja *Zapomniane hasło
 Dziś jest sobota, 18 maja 2024 roku.
Ustaw jako stronę startową Ulubione Napisz
PowrótPowrót do serwisu  RegulaminRegulamin rssRSS

  tytuł wątku:
Wątki dyskusji

Otwieranie Worda z makra Excela


zamkniętyzamknięty rozpoczął: an_woj postów: 15



napisał: admin
postów: 613


umieszczony:
1 marca 2009
21:40

edytowany:
1 marca 2009
21:42

  
Napisałem wyraźnie o nowym wątku.
A ty się upierasz wszystko pisać w starym.
Nowy temat=nowy wątek
Popraw się, bo dostaniesz bana.
napisał: an_woj
postów: 16


umieszczony:
1 marca 2009
21:36

  
znalazłem w ksiażce VB6, ostatnia modyfikacja:
s = FileDateTime("D:\Folder\Plik.xls")
    MsgBox "Ostatnia modyfikacja pliku :" & s


to jednak nie to o co mi chodzi.
napisał: an_woj
postów: 16


umieszczony:
1 marca 2009
19:04

  
OK. Działa.

niedawno na innym forum krytykowano mie za mnożenie wątków więc tu kontynuuję mój stary choć temat nieco inny.

Makro o którym piszę już działa jednak szablon dla arkuszy z danymi powstał niedawno. W poprzednim szablonie nie było informacji które pozwalają opracować dane. Tu właśnie potrzebna jest informacja o dacie utworzenia pliku.

Otwieranie plików powoduje wydłużenie czasu przetwarzania a obrabiane jest jednorazowo kilkadziesit plików z tysicami danych.
napisał: admin
postów: 613


umieszczony:
1 marca 2009
18:38

  
Po pierwsze wypadałoby do tego posta otworzyć nowy wątek.
Po drugie - sprawa jest banalna, wystarczy przeczytać pomoc w Excelu dotyczącą metody Close:
ThisWorkbook.Close False



Daj znać, czy działa.
napisał: an_woj
postów: 16


umieszczony:
1 marca 2009
18:16

edytowany:
1 marca 2009
18:18

  
Witam po długiej przerwie. Z makrami Excel radzę sobie nieco lepiej jednak mam kolejne pytania:

1. Jak z poziomu makra Excel pobrać dane (konkretne komórki) z plików *.xls bez ich otwierania.
2. Jak sprawdzić datę utworzenia pliku z którego chcę pobrać dane.
3. Jak zamknć plik bez możliwości jego zapisu. Próbowałem:
ThisWorkbook.Saved = False
ThisWorkbook.Close


jadnak mimo to pyta czy zapisać zmiany w pliku. Chcę aby użytkownik makra nie miał takiej możliwości bo wynikiem pracy makra jest nowo utworzony dokument.

pozdrawiam
napisał: an_woj
postów: 16


umieszczony:
2 września 2006
15:29

  
W otwarciu wątku pisałem że makra robię okazjonalnie. Robię to w trybie "visual". Tu przydaje się Visual Basic 6 z którym miewam kontakt (wersja demo). Jeśli chodzi o kontrolki to np. OLE, pozwalająca otworzyć dokumenty innych programów. DTPicker, adoptowałem z innego programu. Nie wiedziałem o tym że makro nie zachowuje kontrolek i okazało się że nie działa na innym komputerze.
Karta eksponatu (mój przypadek, tak sobie to nazwałem) to dokument Worda z dokładnym opisem i miniaturami zdjęć w miarę możliwości estetycznie opracowany. W przypadku próby wymiany czy chęci zaprezentowania w miejscu gdzie nie ma komputera, łatwo taki dokument wydrukować. Zdjęcia mają wstawione hiperłącza, można je bez szukania zobaczyć w pełnej wielkości.
Tworzone makro pozwoli mi szybko znajdować karty pogrupowane tematycznie, przeglądać najważniejsze dane otwierać znajdujące się w katalogu, dodawać nowo utworzone i zmieniać lub rozszerzać opisy.

Andrzej
napisał: Trebor
postów: 1209


umieszczony:
2 września 2006
15:06

  
Można jeszcze tak:
Application.Visible = False



i mamy czysto na pasku. Przed testowaniem sugeruję otworzyć Edytor VBA aby bezproblemowo zamienić False na True i przywrócić widzialność.
napisał: Trebor
postów: 1209


umieszczony:
2 września 2006
09:37

  
Już, ktoś mi zwrócił uwagę, że używam skrótów myślowych co potwierdza Twój post. Excel ma jedną bardzo przydatną funkcjonalność, która nawet zaawansowanemu użytkownikowi oddaje nieocenione usługi. Jest to możliwość rejestracji czynności w aplikacji. Wyświetl w excelu pasek VBA. Na nim znajdziesz ikonki do nagrywania. Po zakończeniu wystarczy "odcedzić" w nagranym makrze istotne komendy od przypadkowych i dodatkowo poczytać o nich w pomocy. Oczywiście tą metodą nie da się nagrać np. pętli i wielu innych funkcji ale i tak jest to przydatne narzędzie.
Jakich kontrolek brakuje Ci VBA?
Co to są karty eksponatu?
napisał: an_woj
postów: 16


umieszczony:
1 września 2006
23:50

  
I znów działa ale w wersji z wyborem arkusza. Zmienną chyba zle usytuowałem w wierszu. Trochę bawiłem się VB dla Windows i w VBA brakuje mi kontrolek. To jest powodem moich kłopotów. Wszystkie formatki które przygotowałem na potrzeby katalogu zbiorów działają nienagannie. Są to: start z wyborem, wprowadzanie danych, wprowadzanie zmian, wyszukiwanie i podgląd, teraz już otwieranie kart eksponatu. Pozostało wygładzenie całości które da wrażenie pracy w aplikacji Windows.
Idzie o to aby po starcie makra, okno Excela zostało ukryte lub zminimalizowane a po zamknięciu makra, Excel został zamknięty po zapisaniu zmian w arkuszach.
napisał: Trebor
postów: 1209


umieszczony:
1 września 2006
22:47

  
Inny arkusz w excelu możesz wybrać:
Sheets("nazwa").Select
Sheets(1).Select


jednak aby się odwołać do komórki w innym arkuszu nie trzeba go wybierać wystarczy np. tak
zmienna = Sheets("nazwa").Range("A1")

napisał: an_woj
postów: 16


umieszczony:
1 września 2006
22:37

  
Wspaniale, o to mi chodziło. Adres komórki zastąpiłem zmienną. Działa, jednak jak wybrać inny arkusz.
Mam jeszce inne pytania ale to później. Nie jestem Napoleonem, nie potrafię zajmować się wieloma wątkami jednocześnie.
napisał: Trebor
postów: 1209


umieszczony:
1 września 2006
21:14

  
Hej
Może tak:
Dim appWD As Object
Set appWD = CreateObject("Word.Application")
appWD.Visible = True
'w komórce a1 ścieżka
appWD.Documents.Open Filename:=Range("A1").Value, ReadOnly:=True


Pozdrawiam
napisał: an_woj
postów: 16


umieszczony:
1 września 2006
20:57

  
Witam
Jestem tu nowym. Makra robię okazjonalnie.
Zrobiłem coś w rodzaju katalogu zbiorów kolekcjonerskich. Karty prezentujące eksponat mam przygotowane w Wordzie. Nie mogę sobie poradzić z otwieraniem w nowym oknie plików Worda z makra zrobionego w Excelu. Ścieżki dostępu zapisywane są w jednej z komórek.
Czy Możecie mi doradzić (przykładowy kod)?
Andrzej


<-wstecz  1  dalej->
wszystkich stron: 1


Sortuj posty: z