Forum elektroda.pl

Regulamin | Punkty | Dodaj... | Ostatnie | Szukaj | Rejestracja | Zaloguj

Ta strona używa cookie. Dowiedz się więcej o celu ich używania i zmianie ustawień cookie w przeglądarce.
Korzystając ze strony wyrażasz zgodę na używanie cookie, zgodnie z aktualnymi ustawieniami przeglądarki.

VBA: Kopiowanie danych z EXCELA do WORDA


Napisz nowy temat  Odpowiedz do tematu      Strona Główna -> Forum elektroda.pl -> Programowanie Ogólne -> VBA: Kopiowanie danych z EXCELA do WORDA
Autor
Wiadomość
dhutirth
Poziom 4
Poziom 4


Dołączył: 13 Sty 2009
Posty: 9
Miasto: Śląskie

Post#1 Post autora tematu 19 Lip 2011 07:48   

VBA: Kopiowanie danych z EXCELA do WORDA


Witam
Mam mały problem z makrami, sam nie potrafię sobie poradzić i mam nadzieje, że znajdzie się tu ktoś, kto mi pomoże
Ale o co chodzi?
Mam makro w Wordzie (Office 2007, odniesienie do biblioteki Excela):

Kod Visual Basic - [rozwiń]
 
Sub dane()
Dim objExcel As New Excel.Application
Dim exl As Excel.Workbook
 
Set exl = objExcel.Workbooks.Open(ActiveDocument.Path & "/excel.xls")
 
ActiveDocument.Tables(1).Select
Selection.HomeKey Unit:=wdLine
Selection.MoveRight Unit:=wdCell, Count:=1
 
Selection.TypeText exl.Sheets("Arkusz1").Cells(1,1)
Selection.MoveRight Unit:=wdCell, Count:=1
Selection.TypeText exl.Sheets("Arkusz1").Cells(1, 2)
 
exl.Close
 
Set exl = Nothing
 
End Sub
 

Generalnie w komórce A1 jest jakaś wartość (powiedzmy wynik pomiaru) w komórce B1 niepewność. Do tabeli 1 w Wordzie w pierwszej kolumnie wrzucany jest wynik z komórki A1 w drugiej z komórki B1.
W czym problem?
Ilość miejsc po przecinku w kolumnie pierwszej ma być równa tej w kolumnie 2. Jeśli w B1 jest wynik 0,05 a w A1 20,10 to używając makra pojawiają się w Wordzie wyniki kolejno: 20,1 i 0,05, a ja potrzebuję 20,10 i 0,05. Próbowałem w Excelu zaokrąglania (funkcja ROUND) i formatowania komórek (.NumberFormat), ale to nie zdaje egzaminu :(. Ma ktoś jakiś pomysł?
Powrót do góry
   
Google


Google Adsense


Post# 19 Lip 2011 07:48   





Powrót do góry
   
adamas_nt
Poziom 23
Poziom 23


Dołączył: 26 Sty 2008
Posty: 3942
Miasto: Nowy Tomyśl

Post#2 19 Lip 2011 08:48pomocny post - solucja   

Re: VBA: Kopiowanie danych z EXCELA do WORDA


Spróbuj z formatowaniem
Kod Visual Basic - [rozwiń]
Selection.TypeText Format(exl.Sheets("Arkusz1").Cells(1, 1), "00.00")
Na końcu makra zamknij instancję Excela (będzie w pamięci jako proces).
Kod Visual Basic - [rozwiń]
objExcel.Quit

Powrót do góry
   
Google


Google Adsense


Post# 19 Lip 2011 08:48pomocny post - solucja   





Powrót do góry
   
dhutirth
Poziom 4
Poziom 4


Dołączył: 13 Sty 2009
Posty: 9
Miasto: Śląskie

Post#3 Post autora tematu 19 Lip 2011 09:07   

Re: VBA: Kopiowanie danych z EXCELA do WORDA


Wielkie dzięki. Sprawuje się prawie idealnie, prawie bo będę jeszcze tylko musiał jakąś zmienną zastosować (ilość miejsc po przecinku będzie się zmienać), ale to już nie kłopot.

Cytat:
Na końcu makra zamknij instancję Excela (będzie w pamięci jako proces).

Faktycznie, umknęło mi :)
Powrót do góry
   
Napisz nowy temat  Odpowiedz do tematu      Strona Główna -> Forum elektroda.pl -> Programowanie Ogólne -> VBA: Kopiowanie danych z EXCELA do WORDA
Strona 1 z 1
Podobne tematy
VBA Excel - Kopiowanie danych między skoroszytami (5)
Excel,VBA - automatyczne kopiowanie danych wyfiltrowanych (2)
Przejście z otwartego worda do otwartego w tle excela - VBA (4)
VBA kopiowanie komorek excela do schowka UTKNĄŁEM:/co dalej? (5)
VB Import/eksport danych z Excela do worda (5)
[VBA]Makro wklejające z Excela do Worda tekst bez formatowań (3)
VBA - Kopiowanie danych z excela (3)
VBA / Excel - Kopiowanie danych z excela (2)
Excel VBA - Kopiowanie danych do innego formularza (4)
VBA - kopiowanie danych z kilku skoroszytów do jednego (2)


Administrator || Moderatorzy || Regulamin forum || Regulamin ogólny || Informacja o cookies || Reklama || Kontakt

Page generation time: 0.062 seconds

elektroda.pl temat RSS