Witamy na forum PC Format Zapraszamy do REJESTRACJI


Użytkownicy przeglądający ten wątek: 1 gości

Pomoc w VBA excel

#1
Pomoc w VBA excel
Witam,
Potrzebuje pomocy w napisaniu makra w excelu.
Mianowicie: w excel-u (2007) mam 8 skoroszytów. Każdy skoroszyt zawiera taką samą tabelkę, lecz z innymi danymi. Mam też dodatkowy skoroszyt, w którym próbuję zrobić (za pomocą makra) taki raport, który będzie mi wypisywało w kolumnie (jeden pod drugim) pięć chcianych przeze mnie wybranych (tych samych) komórek.
TZN. przykład:
nazwa_skoroszytu_1: tabelka, chcę, aby brało mi z niej wartości z komórek A4, B7, G4, H2, S1.
nazwa_skoroszytu_2: tabelka, chcę, aby brało mi z niej wartości z komórek A4, B7, G4, H2, S1.
.
.
.
nazwa_skoroszytu(raport): Chciałbym, aby jeden pod drugim wkleiło mi (od aktualnie zaznaczonej komórki) wartości z wybranego przeze mnie skoroszytu: A4, poniżej B7, poniżej G4, poniżej H2, poniżej S1.
Bardzo by mi ułatwiło sprawę, ponieważ w momencie kiedy stworzę nowy skoroszyt z tą samą tabelką, mógłbym sobie za pomocą makra wkleić do raportu dane z tego nowo powstałego skoroszytu.


Proszę o pomoc - jeżeli będą to komendy proszę podajcie jak ich używać, jestem w tym kompletnie zielony.

PS
Żeby nie było, że idę na gotowe, czytałem sporo, testowałem, próbowałem, ale nie potrafię wymyślić jak zrobić, abym mógł wybrać sobie z którego skoroszytu chcę te dane skopiować, resztę wykminiłem. Kombinowałem żeby wpisać ręcznie w raporcie np. nazwa_skoroszytu_53 i wtedy żeby skopiowało tą nazwę do kodu, aby to na ten skoroszyt przełączyło, jednak nie potrafię znaleźć czegoś takiego.

Poradziłem sobie do momentu w którym nawet fajnie mi się udaje wszystko kopiować, po prostu w komórce wpisuje nazwę skoroszytu, zaznaczam, klikam makro i wszystko z tego skoroszytu mi się uzupełnia. Problem jest w tym, gdy kopiuję komórkę scaloną (i pionowo i poziomo) i wkleja mi ją do raportu jako jedną komórkę (dałem, aby wklejało tylko wartość), to z komórki poniżej znika tekst. Można cos na to poradzić?

Komórki które mam scalone to od B5 do E6
Mój aktualny kod:

Sub Uzupelnij()
'
' Uzupelnij Makro
'

'
   Dim zad As String
   zad = ActiveCell
   Sheets(zad).Select
   Range("E1").Select
   Selection.Copy
   Sheets("Raport").Select
   ActiveCell.Offset(0, 1).PasteSpecial xlPasteValues
   
   Sheets(zad).Select
   Range("F5").Select
   Selection.Copy
   Sheets("Raport").Select
   ActiveCell.Offset(0, 1).PasteSpecial xlPasteValues
   
   Sheets(zad).Select
   Range("B5").Select
   Selection.Copy
   Sheets("Raport").Select
   ActiveCell.Offset(0, 1).PasteSpecial xlPasteValues
   
   Sheets(zad).Select
   Range("D13").Select
   Selection.Copy
   Sheets("Raport").Select
   ActiveCell.Offset(0, 1).PasteSpecial xlPasteValues
   
   Sheets(zad).Select
   Range("H9").Select
   Selection.Copy
   Sheets("Raport").Select
   ActiveCell.Offset(0, 1).PasteSpecial xlPasteValues

   ActiveCell.Offset(0, -5).Activate
   
End Sub
 System operacyjny: windows_seven Przeglądarka: firefox
#2
RE: Pomoc w VBA excel
Wczoraj już nad tym nie siedziałem, chciałem sobie dzisiaj to dokończyć. Niestety wciąż mam problem z tym samym, opiszę co w jednym zdaniu.

W momencie kopiowania danych z komórki scalonej w dół o jedno pole z jednego skoroszytu do drugiego skoroszytu ale jednej komórki, tekst z komórki poniżej tej wklejanej znika.

Bardzo proszę o pomoc Wesoły
 System operacyjny: windows_seven Przeglądarka: firefox
#3
RE: Pomoc w VBA excel
1. Kod wklejamy w znacznikach (tagach): "Kod" - trzecia ikonka  w prawo od "smile" - po to ona tam jest.
2. Prześlij ten plik - będzie łatwiej (oczywiście jeśli są jakieś wrażliwe dane to zastąp czymkolwiek - ale w tym samym formacie).

Na szybko: "select" to jest najgorsza metoda. Robi się tak: deklarujesz jakąś zmienną i pod nią podstawiasz wartość.
A już jak chodzi o "skakanie" między arkuszami...  heh...   Chytry

----
edit: deklaracja może dotyczyć zarówno wartości z komórki jak i zakresu, arkusza a nawet pliku.
Nie pomagam na PW (ew. odpłatnie). 
I osobom z roszczeniowym podejściem. I osobom niedbającym o poprawność językową.
Jak podawać logi
Jeśli nie odpowiadam w danym wątku przez >3 dni - proszę o przypomnienie na PW z linkiem do wątku w treści.




 System operacyjny: windows_seven Przeglądarka: firefox
#4
RE: Pomoc w VBA excel
Okej, w takim razie przesyłam przykład.
Problem jest w tym co napisałem wcześniej, gdy używam makra a pod wierszem do którego zostaje użyte makro w kolumnie "tytuł" był jakiś tekst, zostaje on wymazany.

Właściwie najbardziej optymalne było by, gdyby w arkuszu "raport" wszystkie zadania aktualizowały się automatycznie po użyciu makra, nie tylko jedno (na to mam pomysł, ale chyba zbyt pokręcony :D), jednak jeszcze lepiej było by, gdyby dodawało do arkusza "raport" również nowe zadania, które będą tworzone w nowych arkuszach (na to już nie mam kompletnie pomysłu)

PS
przykład przesyłam jako link do ściągnięcia, ponieważ w załączniku nie można dodać pliku excela.
 System operacyjny: windows_seven Przeglądarka: firefox
Programy: Polecane / Nowe / Inne




Podobne wątki (Pomoc w VBA excel)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Visual Basic Excel l.całkowitą przedstawić w postaci szesnastkowej fugaz 4 5045 18.06.2019, 21:36
Ostatni post: fugaz
  VBA excel dmjs 6 6713 17.04.2019, 10:20
Ostatni post: ptrick
  Sumowanie licz excel - problem OxyGenE 2 10589 19.12.2018, 16:29
Ostatni post: Szachista

Skocz do:


Wybrane wątki (Pomoc w VBA excel)
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Błąd przy uruchamianiu programu w Java z wiersza poleceń Physicist 3 1991 30.08.2019 14:16
Ostatni post: Physicist
  Python z wiersza poleceń Physicist 15 10059 21.08.2019 20:14
Ostatni post: Physicist
  Transfer plików via FTP Visual Basic FireBytes 3 5041 15.08.2019 07:41
Ostatni post: Szachista
  Menu wysuwane z boku patryk67 1 3449 07.08.2019 12:43
Ostatni post: aht
  Visual Basic Excel l.całkowitą przedstawić w postaci szesnastkowej fugaz 4 5045 18.06.2019 21:36
Ostatni post: fugaz
  Nauka do Olimpiady Informatycznej? piotr0905 1 4988 08.06.2019 16:50
Ostatni post: wlisik
Ściana Prosta gra w Builder C++ Kiranek1 1 4928 31.05.2019 15:20
Ostatni post: Szachista
  Menu (Nie widoczne długie opisy) wanhelsing 5 6714 28.04.2019 19:31
Ostatni post: koneton
  Skrypt usuwający pliki sylwiaa1 2 2971 28.04.2019 15:20
Ostatni post: sylwiaa1
  Środowisko do assemblera Physicist 4 6352 21.04.2019 14:04
Ostatni post: Ajgor
  VBA excel dmjs 6 6713 17.04.2019 10:20
Ostatni post: ptrick
  C++ - sens pogłębiania nauki gbr 5 7154 25.03.2019 12:53
Ostatni post: koneton
  Klasa wewnętrzna w C++ Physicist 4 6841 23.03.2019 18:28
Ostatni post: Physicist
  Ruby on Rails - tutoriale luciussulla 0 6007 23.03.2019 16:49
Ostatni post: luciussulla
Big Grin Czy dostane sie technikum informatycznego klaudiusz20046 6 9102 21.03.2019 01:28
Ostatni post: UnableToSee