Elektroda.pl
Elektroda.pl
X
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Odwoałnie do komórki (Excel, makro)

karolczyzycki 01 Wrz 2009 09:43 3052 7
  • #1 01 Wrz 2009 09:43
    karolczyzycki

    Poziom 20  

    Witam.
    Mam taki kod w makro.

    Code:
    Workbooks("nazwa").Activate


    Wiersz ten aktywuje plik: nazwa, jeśli zmienię nazwę to muszę znów wchodzić w makro i zmieniać kod.
    Chciałbym żeby nazwa była pobierana z komórki H26.
    Napisałem coś takiego, ale nie działa, co jest nie tak?
    Próbowałem na różne sposoby

    Code:
    Workbooks = Range("H26").Activate


    Code:
    Workbooks Range("H26").Activate

    0 7
  • #3 01 Wrz 2009 10:08
    karolczyzycki

    Poziom 20  

    Nie działa ani to:

    Code:
    Workbooks  Range(H26).Activate

    ani to:
    Code:
    Workbooks = Range(H26).Activate

    0
  • Pomocny post
    #4 01 Wrz 2009 11:16
    adamas_nt
    Moderator Programowanie

    Code:
    Workbooks(Range("H26")).Activate

    0
  • #5 01 Wrz 2009 11:32
    karolczyzycki

    Poziom 20  

    Jeszcze nie działa... a nie powinienem dodać także nazwy arkusza?

    0
  • Pomocny post
    #6 01 Wrz 2009 11:45
    adamas_nt
    Moderator Programowanie

    Zależy co umieszczasz w komórce H26. Jeśli liczbę (indeks arkusza) to wystarczy tak, jak napisałem wyżej. Jeśli nazwę (bez cudzysłowu) to lepiej

    Code:
    wkb = Range("H26")
    
    Workbooks(wkb).Activate

    lub jednocześnie wybierając arkusz
    Code:
    wkb = Range("H26")
    
    ark = Range("I26")
    Workbooks(wkb).Sheets(ark).Activate
    Oczywiście na liczbach (indeksach) też działa. Plik do którego się odwołujesz musi być otwarty.

    0
  • #7 01 Wrz 2009 11:59
    karolczyzycki

    Poziom 20  

    Plik mam otwarty. Myślałem że trzeba podać nazwę arkusza, ale nie zauważyłem że jest ona dalej podana.
    Taki kod nie działał, wyskakiwał błąd

    Code:
    Workbooks(Range("H26")).Activate

    Ale to jest OK.
    Code:
    wkb = Range("H26")
    
    Workbooks(wkb).Activate

    Dzięki.

    0
  • #8 15 Gru 2009 14:14
    karolczyzycki

    Poziom 20  

    Witam.
    Próbuję użyć odwołania do komórki w innym makro i już mi to nie działa.
    Próbuję zrobić makro które w tabeli przestawnej,wybierze mi z całej listy tylko jedną datę, data znajduje się w komórce M8.
    Myślę że to najlepszy sposób. Ale nie działa odwołanie do M8

    Code:
    Sub Makro1()
    
    Makro1 Makro
        With ActiveSheet.PivotTables("Tabela przestawna1").PivotFields("data")
            .PivotItems("13-12-09").Visible = False
            .PivotItems = Range("M8").Visible = False
        End With
    End Sub

    0