Excel VBA записывает формулу в sheet1, из определенных ячеек в sheet2, sheet3, в sheet (i), где «i» - это выбранное вами число - PullRequest
0 голосов
/ 12 октября 2018

Мне нужна помощь с моим кодом, и я надеюсь, что у кого-то здесь есть решение, которым они могли бы поделиться.

Я пытаюсь написать формулы в Sheet1 в определенных ячейках с VBA, где формула должна ссылатьсяна разные листы с одинаковыми именами, за исключением того, что они нумеруются в конце, как: Sheet2, Sheet3, Sheet4 вплоть до листа «i», который определяется пользователем функцией InputBox.

Я написал следующеекод, но изо всех сил пытаются сделать это написать формулы:

  • "= 'Sheet2'! A1" в ячейке K3 в Sheet1 для i = 2
  • "= 'Sheet3'!A1 "в ячейке P3 в Sheet1 для i = 3
  • и так далее до i = i

Мой код выглядит следующим образом:

Sub Enter_formulas()
    Dim i As Long
    Dim xNumber As Integer
    xNumber = InputBox("Choose number of sheets")
    For i = 2 To xNumber
        Worksheets("Sheet1").Cells(3, 1 + 5 * i).Formula = "='Sheets(i)'!A1"
    Next i
End Sub

Так что в основномЯ хочу, чтобы он записывал в определенные ячейки в «Sheet1», в зависимости от числа «i», которое является вводом от пользователя.«i» определяет как, с какого листа будет взята ваша формула, так и положение на листе 1, где должна быть написана формула.

Так что это последняя часть «.Formula = ......??»Мне нужна помощь, если это можно написать так.(Он работает с константами, просто не могу понять, как это сделать с «i»).

Оцените все предложения, и если что-то будет плохо объяснено, пожалуйста, скажите мне:)

Счастливые выходные!:)

Stian aka GingerBoy

...