У меня есть диапазон Excel First, который состоит из четырех столбцов (AD) и пяти строк (1-5).

Ячейки в этом диапазоне состоят из чисел.

Я хочу установить два других диапазона - второй диапазон Excel и третий диапазон Excel на другом листе.

Я хочу, чтобы оба диапазона были идентичны диапазону Excel First, за исключением того, что числа во втором диапазоне вдвое превышают значения в первом диапазоне, а значения в третьем диапазоне - в три раза больше значений в первом диапазоне.

Я также хочу, чтобы Третий диапазон был расположен чуть ниже Второго диапазона.

Я также хочу, чтобы, если я добавляю новые строки или столбцы в первый диапазон, и эти ячейки имеют номера, то второй и третий диапазоны автоматически добавляют новые строки и столбцы, за исключением того, что числовые значения во втором и третьем диапазонах удвоить и утроить тех, кто в Первых диапазонах, соответственно.

Это возможно? Если да, то как мне это сделать?

1 ответ1

0

Поскольку у вашего вопроса много поворотов, я делю запрос на три части.

Часть 1:

Скопируйте первый диапазон на другой лист как второй и третий диапазон.

Создать командную кнопку на листе 1 и использовать этот код VBA,

Private Sub CommandButton1_Click()

Dim lastrow As Long
lastrow = Sheets("Sheet2").Range("A65536").End(xlUp).Row

Range("A1:D5").Copy Destination:=Sheets("Sheet2").Range("A" & lastrow)

End Sub

Часть 2: Создать командную кнопку на листе 2.

Установите CAPTION как Double.

Используйте этот код VBA,

Private Sub CommandButton2_Click()

If CommandButton2.Caption = "Double" Then

Dim rngData As Range

    Set rngData = ThisWorkbook.Worksheets("Sheet2").Range("A1:D5")
    rngData = Evaluate(rngData.Address & "*2")
    CommandButton2.Caption = "Triple"


ElseIf CommandButton2.Caption = "Triple" Then

Dim rngData1 As Range

    Set rngData = ThisWorkbook.Worksheets("Sheet2").Range("A6:D10")
    rngData = Evaluate(rngData.Address & "*3")
    CommandButton2.Caption = "Double"
   End If

End Sub

Часть 3:

Теперь, как обновить Range 2 и 3 с изменениями в Range 1.

Для этого самое простое, что я могу вам предложить.

Скопируйте Range One с некоторыми ДОПОЛНИТЕЛЬНЫМИ строками и столбцами и используйте PASTE LINK.

Обратите внимание, что в этом случае НЕ ИСПОЛЬЗУЙТЕ ЧАСТЬ ОДНУ из моего решения.

Надеюсь, это поможет вам.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .