1

У меня есть большая финансовая таблица с кучей формул. Я хотел бы продублировать строку так, чтобы она сохраняла ту же формулу и координаты, что и исходная строка (в основном дублирует итоговую строку, и при этом она должна быть такой же):

начать с:

[448]   =J425+J441  =K425+K441  =L425+L441

конец с:

[447]   =J425+J441  =K425+K441  =L425+L441
[448]   =J425+J441  =K425+K441  =L425+L441

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

8 ответов8

4

Вы можете скопировать соответствующие ячейки, а затем вставить ссылку. Я знаю, что это работает в Excel 2010, но не уверен насчет Excel Mac 2011. Ссылка вставки сделает все ссылки на ячейки абсолютными.

1
  1. Нажмите "Показать формулы".  (В Excel 2007 это находится на вкладке "Формулы" в группе "Аудит формул".)
  2. Сохранить как CSV.
  3. Отредактируйте файл CSV (например, с помощью Блокнота) и сделайте копию строки.
  4. Откройте CSV в Excel.
  5. Так как это лишит возможности форматирования и других функций, вы можете скопировать новую строку обратно в исходный файл XLS (X).
1

Это легко, если вы открыты для использования VBA. Следующая процедура копирует формулу из каждой ячейки в исходном диапазоне в место назначения, сохраняя ссылки без изменения абсолютных ссылок.

Sub CopyRowPreserveReferences()
    Dim rng As Range
    Dim cell As Range
    Dim iOffset As Integer

    iOffset = 1 ' this will copy the row 1 row down, set it to -1 if you
                ' want to copy to the row above
    Set rng = Range("a5:i5") ' set this to range you want to copy
    For Each cell In rng
        cell.Offset(iOffset).Formula = cell.Formula
    Next
End Sub
0

Используйте функцию "Смещение" для ссылки на другие ячейки. Это сохранит ссылку на ячейку относительно вашей новой ячейки.

0

Вы хотите это:

  A 
1 hello
2 =A1
3 =A1

где A2 - исходная ячейка с формулой, а A3 - новая ячейка

Это должно дать:

  A
1 hello
2 hello
3 hello

в качестве вывода.

Итак, нажмите на ячейку A2. затем щелкните панель формул и выделите формулу. Скопируйте это. Теперь нажмите escape.

Нажмите на ячейку A3. Нажмите на панель формул и вставьте.

Хм ... если это не лучшее решение, то я не понял вопроса :)

0

Это может быть сделано относительно простым способом в три этапа:

  1. Убедитесь, что у вас есть несколько пустых строк для работы
  2. Скопируйте строку [448] до строки [447]; это устанавливает все ссылки на строку 1 меньше, чем они должны для строки 447
  3. Переместите строку [447] вверх в строку [446]; Реферы по-прежнему на один меньше, чем должны быть
  4. Скопируйте строку [446] вниз в строку [447]; ссылки на строки теперь увеличены на 1

На этом этапе ваш ряд [447] должен теперь быть клоном строки [448]

0

Я нашел другой ответ:

  1. Замените все символы "=" на символы "#" (в итоговой строке).
  2. Скопируйте и вставьте строку.
  3. Измените символы "#" обратно на символы "=".

Раскрытие: я не совсем понимаю, почему это работает. Я получил его на работу (в Excel 2007), но я не проверил его полностью.

0
  • Выберите нужную строку
  • Щелкните правой кнопкой мыши строку
  • Скопируйте строку
  • Щелкните правой кнопкой мыши по той же строке снова
  • Нажмите "вставить скопированные ячейки"

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