- 08/14/2019
- 9 minut do odczytania
-
- o
- M
- l
- m
- o
-
+4
reprezentuje komórkę, wiersz, kolumna, wybór komórek zawierających jeden lub więcej przylegających bloków komórek lub zakres 3D.,
Uwaga
jesteś zainteresowany rozwojem rozwiązań, które rozszerzają doświadczenie biurowe na wiele platform? Sprawdź nowy model dodatków Office. Dodatki pakietu Office mają niewielkie rozmiary w porównaniu z dodatkami i rozwiązaniami VSTO i można je zbudować przy użyciu prawie każdej technologii programowania internetowego, takiej jak HTML5, JavaScript, CSS3 i XML.
uwagi
domyślny element Range przekazuje wywołanie bez parametrów do właściwości Value i wywołanie z parametrami do elementu., Accordingly, someRange = someOtherRange
is equivalent to someRange.Value = someOtherRange.Value
, someRange(1)
to someRange.Item(1)
and someRange(1,1)
to someRange.Item(1,1)
.,
następujące właściwości i metody zwracania obiektu zakresu są opisane w sekcji przykład:
- właściwości zakresu i komórek obiektu arkusza roboczego
- właściwości zakresu i komórek obiektu zakresu
- właściwości wierszy i kolumn obiektu arkusza roboczego
- właściwości wierszy i kolumn obiektu zakresu
- właściwość offsetu obiektu zakresu
- metoda Unii obiektu aplikacji
przykład
użyj range (ARG), gdzie ARG nazywa zakres, aby zwrócić obiekt range, który reprezentuje pojedynczą komórkę lub zakres komórek., Poniższy przykład umieszcza wartość komórki A1 w komórce A5.
Worksheets("Sheet1").Range("A5").Value = _ Worksheets("Sheet1").Range("A1").Value
poniższy przykład wypełnia zakres A1:H8 liczbami losowymi, ustawiając formułę dla każdej komórki w zakresie. Gdy jest używana bez kwalifikatora obiektu (obiekt po lewej stronie kropki), właściwość Range zwraca Zakres na aktywnym arkuszu. Jeśli aktywny arkusz nie jest arkuszem roboczym, metoda nie powiedzie się.
użyj Aktywuj metodę obiektu arkusza roboczego, aby aktywować arkusz roboczy przed użyciem właściwości zakres bez jawnego kwalifikatora obiektu.,
Worksheets("Sheet1").Activate Range("A1:H8").Formula = "=Rand()" 'Range is on the active sheet
poniższy przykład usuwa zawartość zakresu nazwanych kryteriów.
Uwaga
Jeśli używasz argumentu tekstowego dla adresu zakresu, musisz podać adres w notacji w stylu A1 (nie możesz używać notacji w stylu R1C1).
Worksheets(1).Range("Criteria").ClearContents
użyj komórek w arkuszu, aby uzyskać zakres składający się ze wszystkich pojedynczych komórek w arkuszu. Możesz uzyskać dostęp do pojedynczych komórek za pomocą pozycji (wiersz, kolumna), gdzie row jest indeksem wiersza, a kolumna jest indeksem kolumny.,Element można pominąć, ponieważ wywołanie jest do niego przekazywane przez domyślny element Range.Poniższy przykład ustawia wartość komórki A1 na 24 i komórki B1 na 42 na pierwszym arkuszu aktywnego skoroszytu.
Worksheets(1).Cells(1, 1).Value = 24Worksheets(1).Cells.Item(1, 2).Value = 42
poniższy przykład ustawia formułę dla komórki A2.
ActiveSheet.Cells(2, 1).Formula = "=Sum(B1:B5)"
chociaż możesz również użyćRange("A1")
aby zwrócić komórkę A1, mogą się zdarzyć, że właściwość komórek będzie wygodniejsza, ponieważ możesz użyć zmiennej dla wiersza lub kolumny. Poniższy przykład tworzy nagłówki kolumn i wierszy w arkuszu 1., Należy pamiętać, że po uaktywnieniu arkusza właściwość komórki może być używana bez jawnej deklaracji arkusza (zwraca komórkę na aktywnym arkuszu).
Uwaga
chociaż możesz użyć funkcji string Visual Basic do zmiany odniesień w stylu A1, łatwiej (i lepiej praktyki programowania) jest używać notacjiCells(1, 1)
.
Use_expression_.Komórki, gdzie wyrażenie jest wyrażeniem zwracającym obiekt Range, w celu uzyskania zakresu o tym samym adresie składającego się z pojedynczych komórek.,W takim zakresie można uzyskać dostęp do pojedynczych komórek za pomocą elementu (wiersz, kolumna), gdzie są względem lewego górnego rogu pierwszego obszaru zakresu.Element można pominąć, ponieważ wywołanie jest do niego przekazywane przez domyślny element Range.Poniższy przykład ustawia formułę dla komórki C5 i D5 pierwszego arkusza aktywnego skoroszytu.
Worksheets(1).Range("C5:C10").Cells(1, 1).Formula = "=Rand()"Worksheets(1).Range("C5:C10").Cells.Item(1, 2).Formula = "=Rand()"
użyj Range (cell1, cell2), gdzie cell1 i cell2 są obiektami zakresu, które określają początek i koniec komórki, aby zwrócić obiekt zakresu. Poniższy przykład ustawia styl linii obramowania dla komórek A1: J10.,
Uwaga
należy pamiętać, że period przed każdym wystąpieniem właściwości Cells jest wymagany, jeśli wynik poprzedzającej instrukcji With ma być zastosowany do właściwości Cells. W tym przypadku oznacza to, że komórki znajdują się w arkuszu pierwszym (bez okresu, właściwość komórki zwróci komórki na aktywnym arkuszu).
With Worksheets(1) .Range(.Cells(1, 1), _ .Cells(10, 10)).Borders.LineStyle = xlThick End With
użyj wierszy w arkuszu, aby uzyskać zakres składający się ze wszystkich wierszy w arkuszu. Dostęp do pojedynczych wierszy można uzyskać Za pomocą pozycji (row), gdzie row jest indeksem wiersza.,Element można pominąć, ponieważ wywołanie jest do niego przekazywane przez domyślny element Range.
Uwaga
podanie drugiego parametru pozycji dla zakresów składających się z wierszy nie jest legalne. Najpierw musisz przekonwertować go na pojedyncze komórki za pomocą komórek.
poniższy przykład usuwa wiersz 4 i 10 pierwszego arkusza aktywnego skoroszytu.
Worksheets(1).Rows(10).DeleteWorksheets(1).Rows.Item(5).Delete
użyj kolumn w arkuszu, aby uzyskać zakres składający się ze wszystkich kolumn w arkuszu., Dostęp do pojedynczych kolumn można uzyskać poprzez pozycję (Wiersz), gdzie row jest indeksem kolumny podanym jako Liczba lub jako adres kolumny w stylu A1.Element można pominąć, ponieważ wywołanie jest do niego przekazywane przez domyślny element Range.
Uwaga
podanie drugiego parametru pozycji dla zakresów składających się z kolumn jest niezgodne z prawem. Najpierw musisz przekonwertować go na pojedyncze komórki za pomocą komórek.
poniższy przykład usuwa kolumny „B”, „C”, „E” I „J” pierwszego arkusza aktywnego skoroszytu.
Use_expression_.,Rows, gdzie wyrażenie jest wyrażeniem zwracającym obiekt Range, aby uzyskać zakres składający się z wierszy w pierwszym obszarze zakresu.Dostęp do pojedynczych wierszy można uzyskać Za pomocą pozycji (row), gdzie row jest względnym indeksem wierszy od góry pierwszego obszaru zakresu.Element można pominąć, ponieważ wywołanie jest do niego przekazywane przez domyślny element Range.
Uwaga
podanie drugiego parametru pozycji dla zakresów składających się z wierszy nie jest legalne. Najpierw musisz przekonwertować go na pojedyncze komórki za pomocą komórek.,
poniższy przykład usuwa zakresy C8:D8 i C6:D6 pierwszego arkusza aktywnego skoroszytu.
Worksheets(1).Range("C5:D10").Rows(4).DeleteWorksheets(1).Range("C5:D10").Rows.Item(2).Delete
Use_expression_.Kolumny, gdzie wyrażenie jest wyrażeniem zwracającym obiekt Range, aby uzyskać zakres składający się z kolumn w pierwszym obszarze zakresu.Dostęp do pojedynczych kolumn można uzyskać poprzez pozycję (Wiersz), gdzie row jest względnym indeksem kolumn z lewej strony pierwszego obszaru zakresu podanego jako Liczba lub jako adres kolumny w stylu A1.Element można pominąć, ponieważ wywołanie jest do niego przekazywane przez domyślny element Range.,
Uwaga
podanie drugiego parametru pozycji dla zakresów składających się z kolumn jest niezgodne z prawem. Najpierw musisz przekonwertować go na pojedyncze komórki za pomocą komórek.
poniższy przykład usuwa zakresy L2:L10, G2:G10, F2:F10 i D2:D10 pierwszego arkusza aktywnego skoroszytu.
użyj Offset (wiersz, kolumna), gdzie wiersz i Kolumna są przesunięciami wierszy i kolumn, aby zwrócić zakres o określonym przesunięciu do innego zakresu., Poniższy przykład wybiera komórkę trzy wiersze w dół i jedną kolumnę po prawej stronie komórki w lewym górnym rogu bieżącego zaznaczenia. Nie możesz wybrać komórki, której nie ma na aktywnym arkuszu, więc musisz najpierw aktywować arkusz.
Worksheets("Sheet1").Activate 'Can't select unless the sheet is active Selection.Offset(3, 1).Range("A1").Select
Use Union (range1, range2, …) zwracać zakresy wielu obszarów—czyli zakresy składające się z dwóch lub więcej sąsiadujących ze sobą bloków komórek. Poniższy przykład wytworzy obiekt zdefiniowany jako związek zakresów A1: B2 i C3: D4, a następnie wybierze określony zakres.,
w przypadku pracy z selekcjami, które zawierają więcej niż jeden obszar, właściwość Areas jest przydatna. Dzieli zaznaczenie wielu obszarów na poszczególne obiekty zakresu, a następnie zwraca obiekty jako kolekcję. Właściwość Count na zwracanej kolekcji pozwala zweryfikować zaznaczenie zawierające więcej niż jeden obszar, jak pokazano w poniższym przykładzie.
Sub NoMultiAreaSelection() NumberOfSelectedAreas = Selection.Areas.Count If NumberOfSelectedAreas > 1 Then MsgBox "You cannot carry out this command " & _ "on multi-area selections" End If End Sub
Ten przykład wykorzystuje metodę AdvancedFilter obiektu Range do wytworzenia listy unikalnych wartości i liczby razy te unikalne wartości występują w zakresie kolumny A.,Item
Top
Leave a Reply