Как скопировать сумму из строки состояния в Excel
Обновлено: 21.11.2024
Бывший писатель Lifewire Тед Френч является сертифицированным специалистом Microsoft, который преподает и пишет о электронных таблицах и программах для работы с электронными таблицами.
Что нужно знать
- По умолчанию в строке состояния отображается номер страницы, количество страниц, расчеты, масштаб, вид листа и режим ячеек.
- Параметры расчета по умолчанию включают поиск среднего значения, количества и суммы для выбранных ячеек данных на текущем листе.
- Нажмите правой кнопкой мыши строку состояния, чтобы просмотреть дополнительные параметры, например ползунок масштабирования и состояние загрузки. Нажмите параметр в меню, чтобы включить или выключить его.
В этой статье объясняется, как работать со строкой состояния в Microsoft Excel. Выберите определенные параметры для отображения информации о текущем рабочем листе, данных электронной таблицы и состоянии включения/выключения отдельных клавиш на клавиатуре, таких как Caps Lock, Scroll Lock и Num Lock. Информация охватывает Excel для Microsoft 365, Microsoft Excel 2019, 2016, 2013 и 2010.
Параметры по умолчанию
По умолчанию строка состояния включает номер страницы выбранной страницы рабочего листа и количество страниц в рабочем листе, когда вы работаете в режиме «Макет страницы» или «Предварительный просмотр». Другие сведения, отображаемые по умолчанию, включают:
- Проведение математических и статистических расчетов
- Изменение масштаба листа
- Изменение вида листа
- Сотовый режим
Щелкните правой кнопкой мыши строку состояния, чтобы открыть контекстное меню строки состояния. В меню перечислены доступные параметры — те, рядом с которыми стоит галочка, в данный момент активны. Нажмите параметр в меню, чтобы включить или выключить его.
Параметры расчета
Параметры расчета по умолчанию включают поиск среднего значения, количества и суммы для выбранных ячеек данных на текущем листе; эти параметры связаны с одноименными функциями Excel.
Если вы выберете две или более ячеек, содержащих числовые данные на листе, появится строка состояния:
- Среднее значение данных в ячейках
- Количество выбранных ячеек (количество)
- Общее значение данных в ячейках (сумма)
Хотя по умолчанию они не активны, параметры поиска максимальных и минимальных значений в выбранном диапазоне ячеек также доступны с помощью строки состояния.
Масштаб и ползунок масштабирования
Одним из наиболее часто используемых параметров строки состояния является ползунок масштабирования в правом нижнем углу, который позволяет пользователям изменять степень увеличения рабочего листа. Рядом с ним находится зум, показывающий текущий уровень увеличения.
Если вы решите отобразить параметр масштабирования, но не ползунок масштабирования, вы можете изменить уровень масштабирования, щелкнув масштаб, чтобы открыть диалоговое окно, содержащее параметры для настройки масштабирования.
Просмотр рабочего листа
По умолчанию также активен параметр просмотра ярлыков. Ярлыки находятся рядом с ползунком масштабирования, а три вида по умолчанию: обычный вид, вид макета страницы и предварительный просмотр разрыва страницы.
Режим ячейки
Еще один часто используемый параметр, который также активируется по умолчанию, — это режим ячеек, который отображает текущее состояние активной ячейки на листе. Режим ячейки находится в левой части строки состояния и отображается как одно слово, обозначающее текущий режим выбранной ячейки.
Эти режимы включают:
- Готово. Указывает, что рабочий лист готов к вводу данных пользователем, например данных, формул и форматирования.
- Редактировать: указывает, как следует из названия, что Excel находится в режиме редактирования. Вы можете активировать режим редактирования, дважды щелкнув ячейку указателем мыши или нажав клавишу F2 на клавиатуре.
Если вы не можете активировать режим редактирования, дважды щелкнув или нажав клавишу F2, вам необходимо включить режим редактирования, выбрав «Файл» > «Параметры» > «Дополнительно». В разделе "Параметры редактирования" выберите "Разрешить редактирование непосредственно в ячейках".
Во время семинара по Excel в Тампе возник вопрос: было бы здорово, если бы вы могли копировать статистику из строки состояния в буфер обмена для последующей вставки в диапазон?
Я надавил на человека, который задал вопрос, как именно должна работать паста. Конечно, вы не можете вставить статистику сразу, потому что у вас выделена куча важных ячеек. Вам придется подождать, выбрать другой пустой диапазон электронной таблицы, вставить (как в Ctrl+V ), и статистика появится в диапазоне из 6 строк на 2 столбца. Человек, задавший вопрос, предположил, что это будут статические значения.
Я не пытался ответить на вопрос во время семинара, потому что знал, что это может быть немного сложно.
Но недавно я запустил макрос, чтобы посмотреть, можно ли это сделать. Моя идея состояла в том, чтобы создать длинную текстовую строку, которую можно было бы вставить. Чтобы элементы отображались в двух столбцах, текстовая строка должна иметь метку для столбца 1 (Сумма), а затем табуляцию и значение для столбца 2. Затем вам потребуется возврат каретки, метка для строка 2, столбец 1, затем еще одна вкладка, значение и т. д.
Я знал, что Application.WorksheetFunction — отличный способ вернуть результаты функций Excel в VBA, но он не поддерживает все 400+ функций Excel. Иногда, если в VBA уже есть аналогичная функция (LEFT, RIGHT, MID), Application.WorksheetFunction не будет поддерживать эту функцию. Я запустил VBA с помощью Alt+F11 , отобразил панель Immediate с помощью Ctrl+G , а затем набрал несколько команд, чтобы убедиться, что все шесть функций строки состояния поддерживаются. К счастью, все шесть возвращаемых значений совпадали с тем, что появлялось в строке состояния.
Чтобы сделать макрос короче, можно присвоить Application.WorksheetFunction переменной:
Затем, позже в макросе, вы можете просто ссылаться на WF.Sum(Selection) вместо того, чтобы снова и снова вводить Application.WorksheetFunction.
Что такое код ASCII для вкладки?
Я начал создавать текстовую строку. Я выбрал переменную MS для MyString.
Это тот момент, когда мне понадобился символ табуляции. Я достаточно гик, чтобы знать несколько символов ASCII (10 = перевод строки, 13 = возврат каретки, 32 = пробел, 65 = A, 90 = Z), но я не мог вспомнить табуляцию. Когда я собирался отправиться в Bing, чтобы найти его, я вспомнил, что вы можете использовать vblf в своем коде для перевода строки или vbcr в своем коде для возврата каретки, поэтому я набрал vbtab в нижнем регистре. Затем я перешел на новую строку, чтобы позволить Excel VBA использовать слова, которые он понимает, с заглавной буквы. Я надеялся, что vbtab наберет заглавную букву, и действительно, строка стала заглавной, указывая на то, что VBA собирался дать мне символ табуляции.
Если вы вводите код VBA строчными буквами, при переходе на новую строку вы увидите, что все правильно написанные слова начинаются с заглавной буквы где-то в слове. На изображении ниже vblf, vbcr, vbtab известны vba и записываются с заглавной буквы после перехода на новую строку. Однако то, что я придумал, vbampersand, не известно VBA, поэтому оно не пишется с заглавной буквы.
На данный момент нужно было объединить 6 меток и 6 значений в одну длинную строку. Помните, что в приведенном ниже коде знак _ в конце каждой строки означает, что строка кода продолжается на следующей строке.
После объединения всех меток и значений мне захотелось полюбоваться своей работой, поэтому я отобразил результат в MsgBox. Я запустил код, и он прекрасно сработал:
Я думал, что дома свободен. Если бы я мог просто добавить MS в буфер обмена, я мог бы начать записывать Podcast 1894. Может быть, MS.Copy поможет?
К сожалению, это было не так просто. MS.Copy не является допустимой строкой кода.
Итак, я пошел в Google и искал "Excel VBA Copy Variable to Clipboard". Одним из лучших результатов стал этот пост на доске сообщений MrExcel. В этом посте мои старые друзья Хуан Пабло и НатеО пытались помочь ОП.Настоящая подсказка, однако, заключалась в том, что Хуан Пабло предложил использовать некоторый код с сайта Excel MVP Чипа Пирсона. Я нашел эту страницу, на которой объяснялось, как поместить переменную в буфер обмена.
Чтобы добавить что-либо в буфер обмена, сначала нужно перейти в меню "Инструменты" окна VBA и выбрать "Ссылки". Сначала вы увидите несколько ссылок, отмеченных по умолчанию. Библиотека Microsoft Forms 2.0 не будет проверена. Вам нужно найти его в очень длинном списке и добавить. К счастью для меня, он был на первой странице выбора, где его показывает зеленая стрелка. Как только вы поставите галочку рядом со ссылкой, она переместится наверх.
Код чипа не будет работать, если вы не добавите ссылку, поэтому не пропускайте указанный выше шаг!
Добавив ссылку, завершите макрос, используя код Чипа:
Перед записью подкаста я проверил, работает ли он. Конечно же, когда я запустил макрос, затем выбрал новый диапазон и нажал Ctrl+V для вставки, буфер обмена был очищен до диапазона 6 строк x 2 столбца.
Ура! Я подготовил заставку для эпизода в PowerPoint, включил Camtasia Recorder и записал все вышеперечисленное. Но. Когда я собирался показать заключительные титры, меня охватило щемящее чувство. Этот макрос вставлял статистику как статические значения. Что делать, если базовые данные изменились? Разве вы не хотите, чтобы вставленный блок обновлялся? В подкасте была долгая пауза, во время которой я обдумывал, что делать. Наконец, я щелкнул значок Camtasia Pause Recording и пошел посмотреть, смогу ли я поместить формулу в строку MS и правильно ли она будет вставлена. Конечно, так оно и было. Я даже не доделал макрос полностью или не сделал не одного теста, когда снова включил диктофон и рассказал об этом макросе. В подкасте я предположил, что это никогда не сработает для несмежных выборок, но в более позднем тестировании это работает. Вот макрос для вставки в виде формул:
После публикации видео постоянный зритель Майк Флисс спросил, есть ли способ создать формулы, которые будут постоянно обновляться, чтобы отображать статистику для любого выбранного диапазона. Для этого потребуется макрос Worksheet_SelectionChange, который будет постоянно обновлять именованный диапазон в соответствии с выбором. Хотя это крутой трюк, он заставляет макрос запускаться каждый раз, когда вы перемещаете указатель ячейки, и это будет постоянно очищать стек отмены. Таким образом, если вы используете этот макрос, его нужно добавить в каждую панель кода рабочего листа, где вы хотите, чтобы он работал, и вам придется жить без отмены на этих рабочих листах.
Во-первых, в Excel щелкните правой кнопкой мыши вкладку листа и выберите "Просмотреть код". Затем вставьте этот код.
Вернуться в Excel. Выберите новую ячейку и введите формулу =СУММ(ВыбранныеДанные) . Сначала вы получите циклическую ссылку. Но затем выберите другой диапазон числовых ячеек, и сумма только что созданной формулы обновится.
Выберите новый диапазон, и формула обновится:
Для меня большим открытием стало то, как скопировать переменную в VBA в буфер обмена.
Если вы хотите поэкспериментировать с книгой, заархивированную версию можно скачать отсюда.
Помните, когда в Excel появилась функция автовычисления, когда вы могли выбрать группу ячеек, и сумма этих ячеек волшебным образом появлялась в строке состояния?
Вскоре после того, как я начал использовать AutoCalulate, я обнаружил, что мне часто нужно использовать СУММУ выделенных ячеек в другом месте. Мне было интересно, есть ли в Excel функция, о которой я не знал, которая позволила бы мне скопировать СУММУ этих выбранных ячеек в другую ячейку. К сожалению, ответ был НЕТ.
В то время я уже несколько лет использовал макросы. Макросы позволили мне делать в Excel много «кажущихся невозможными» вещей, поэтому я подумал, что решение может заключаться в некотором программировании на VBA.
Ниже я написал макрос, который вычисляет СУММУ всех выбранных видимых ячеек (т. е. исключает ячейки в скрытых или отфильтрованных строках) и сохраняет ее в буфере обмена. Затем вы можете просто вставить это значение в другую ячейку, в электронное письмо или где-нибудь еще. Я до сих пор использую этот макрос несколько раз в неделю. Это, конечно, лучше, чем пытаться «запомнить» общее количество и ввести его в ячейку.
Ниже приведены шаги, которые необходимо выполнить, чтобы сделать эту функцию доступной для вас.
Отказ от ответственности. Следующие инструкции предоставляются без каких-либо гарантий относительно их удобства использования или производительности. Хотя я приложил все усилия, чтобы убедиться, что они будут работать, как описано, я не могу гарантировать, что они будут работать для любой возможной конфигурации компьютера.
Шаг 1. Добавьте ссылку на DataObject
Этот макрос требует использования объекта с именем DataObject . Чтобы использовать его, вам нужно добавить ссылку на него в VBA. Не пугайтесь, если вы не знаете, что все это значит. Вы просто нажимаете ALT+F11, чтобы открыть редактор Visual Basic, а затем в меню «Инструменты» выбираете «Ссылки». Убедитесь, что «Библиотека объектов Microsoft Forms 2.0» находится в списке доступных ссылок. Если нет, нажмите «Обзор» , выберите FM20.DLL , нажмите «Открыть» и «ОК» .
Кроме того, временная вставка пользовательской формы ( Insert , UserForm ) в проект VBA автоматически добавляет ссылку на библиотеку объектов Microsoft Forms 2.0.
Шаг 2. Добавьте этот макрос в свою личную книгу макросов
Если вы уже используете личную книгу макросов, в редакторе Visual Basic откройте модуль кода в PERSONAL.XLSB и вставьте следующий код в окно кода .
Sub CopySUM()
Dim DataObj As New MSForms.DataObject
При ошибке GoTo BailOut
DataObj.SetText Application.Sum(Selection.SpecialCells(xlCellTypeVisible))
DataObj. PutInClipboard
BailOut:
End Sub
Если у вас нет личной книги макросов, прочтите этот совет, чтобы получить инструкции о том, как создать личную книгу макросов, а затем вернитесь к шагу 3.
Шаг 3. Добавьте кнопку на панель быстрого доступа для запуска макроса
1) Щелкните правой кнопкой мыши ленту и выберите "Настроить панель быстрого доступа" ;
2) В раскрывающемся списке "Выбрать команды из" выберите "Макросы" ;
3) Выберите макрос (CopySum) из списка и нажмите кнопку Добавить>>;
4) Щелкните имя макроса в правой части диалогового окна "Параметры Excel" и нажмите кнопку "Изменить";
5) Выберите символ, который будет использоваться для запуска макроса из QAT, измените «Отображаемое имя» на CopySUM и нажмите «ОК»;
Шаг 4. Проверьте макрос CopySUM
1) Введите несколько чисел на листе;
2) Выберите числа и обратите внимание на СУММУ в строке состояния;
3) Скрыть некоторые строки;
4) Снова выберите ячейки и обратите внимание, что сумма СУММ в строке состояния не включает скрытые значения;
5) Нажмите кнопку CopySUM на QAT, чтобы скопировать сумму выбранных ячеек в буфер обмена;
6) Наконец, выберите пустую ячейку и нажмите CTRL+V, чтобы вставить (или щелкните правой кнопкой мыши, Вставить).
Вы бы поверили мне, если бы я сказал, что
вы можете УДВОИТЬ свою производительность в Excel?
Как насчет ТРОЙНОЙ ? или УВЕЛИЧИТЬ это? или БОЛЬШЕ ?
Если бы я показал вам совет, как вы можете выполнить задачу в Excel за пять секунд, на что обычно у вас уходит от 20 минут до часа или больше, как бы вы это назвали? Продуктивность на стероидах?
<р>. и это только ОДИН совет!" Дайте мне 10 или 15 минут каждую неделю, и я покажу вам, как регулярное изучение нескольких моих экономящих время "Советов по электронным таблицам от пользователя Excel" покажется почти легким, НО быстро поможет вам ПОВЫСИТЬ вашу производительность. в Excel за гранью вашего воображения», — Фрэнсис Хейс, The Excel Addict
Получите БЕСПЛАТНО мой еженедельный информационный бюллетень
"Советы по таблицам от пользователя Excel"
Сейчас его читают более 35 000 пользователей Excel по всему миру
Например, у вас есть диапазон числовых ячеек в Excel, и теперь вам нужно скопировать сумму этого диапазона и вставить в другую ячейку. Как бы вы справились с этим быстро? В этой статье будут представлены некоторые простые обходные пути для копирования суммы выбранных ячеек только в Excel.
- Копировать сумму выбранных ячеек только с помощью VBA.
- Копировать сумму выбранных ячеек только с созданием диапазона имен.
- Копировать сумму только выбранных ячеек, игнорируя скрытые ячейки, строки и столбцы.
Копировать сумму выбранных ячеек только с помощью VBA
Мы можем применить VBA, чтобы скопировать сумму только выбранных ячеек, а затем вставить ее в другую ячейку Excel. Пожалуйста, сделайте следующее:
<р>1.Выберите числовые ячейки, сумма которых будет скопирована, и нажмите клавиши Alt + F11, чтобы открыть окно Microsoft Visual Basic для приложений. <р>2. Нажмите «Вставить» > «Модуль», а затем вставьте приведенный ниже код VBA в открывшееся окно «Модуль».VBA: копирование суммы выбранных ячеек только в Excel
<р>3. Нажмите «Инструменты» > «Ссылки», чтобы открыть окно «Ссылки — VBAProject».
<р>4. В диалоговом окне «Ссылки — VBAProject» нажмите кнопку «Обзор». Затем выберите файл FM20.DLL в папке C:\Windows\System32 во всплывающем диалоговом окне «Добавить ссылку», а затем последовательно нажмите кнопку «Открыть» и кнопку «ОК». чтобы закрыть два диалоговых окна. Смотрите скриншот:
Примечание. Если параметр Библиотека объектов Microsoft Forms 2.0 существует в поле «Доступные ссылки» в окне «Ссылки — VBAProject», отметьте этот параметр напрямую и нажмите кнопку «ОК».
<р>5. Теперь вы вернетесь в окно модуля. Нажмите клавишу F5 или кнопку «Выполнить», чтобы запустить этот код VBA.
Появится диалоговое окно, сообщающее, что сумма выбранных ячеек уже скопирована в буфер обмена. Пожалуйста, нажмите кнопку OK, чтобы закрыть его.
Легко копировать промежуточные итоги только из выделения в другой диапазон или лист Excel
С помощью Kutools for Excel’s Advanced Combine Rows пользователи Excel могут быстро вычислять промежуточные итоги (сумма, количество, среднее и т. д.), не перемещая одни и те же элементы вместе. Таким образом, вы можете скопировать свой выбор в целевой диапазон, а затем применить эту функцию для копирования промежуточных итогов только в Excel. Полнофункциональная бесплатная пробная версия на 30 дней!
Копировать сумму выбранных ячеек только с созданием диапазона имен
Некоторые пользователи Excel могут не захотеть использовать код VBA. Не волнуйся! Этот метод поможет вам скопировать сумму выбранных ячеек только с созданием диапазона имен и применением функции СУММ.
<р>1. Выберите диапазон ячеек, сумму которых вы скопируете, введите имя в поле Имя в левом верхнем углу и нажмите клавишу Enter.
В нашем случае мы определяем диапазон имен как copy_sum в поле Имя. Смотрите скриншот:
<р>2. Выберите ячейку назначения, в которую вы вставите сумму этих ячеек, введите в нее формулу =СУММ(сумма_копий) и нажмите клавишу ВВОД.
И теперь сумма всех ячеек в диапазоне имен возвращается в выбранную ячейку.
Копировать сумму только выбранных ячеек, игнорируя скрытые ячейки/строки/столбцы
Иногда в выбранном диапазоне могут быть скрытые ячейки, строки или столбцы, сумма которых будет скопирована. И вам нужно скопировать сумму, игнорируя скрытые ячейки, строки и столбцы. Как? Попробуйте этот метод!
<р>1. Выберите диапазон со скрытыми строками и столбцами, сумму которых вы скопируете, введите имя в поле «Имя» в верхнем левом углу и нажмите клавишу «Ввод». Смотрите снимок экрана:
В нашем случае мы определяем диапазон имен как copy_sum_visible в поле Имя. Смотрите скриншот:
<р>2. Выберите ячейку назначения, в которую вы поместите сумму, введите в нее формулу =СУММВИДИМАЯ(копируемая_сумма) и нажмите клавишу Enter.
Примечания:
(1) Функция СУММВИДИМОСТЬ является одной из множества полезных встроенных функций, предоставляемых Kutools for Excel.
(2) Значение суммы станет ошибкой, если вы отправите эту книгу другим, которые не устанавливают этот Kutools for Excel. Чтобы избежать этой проблемы, мы рекомендуем вам заменить формулу ее расчетным значением Kutools for Excel's To Actual полезность. Полнофункциональная бесплатная пробная версия на 30 дней!
Демонстрация: копирование суммы только выбранных ячеек с игнорированием скрытых ячеек/строк/столбцов
Kutools for Excel включает в себя более 300 удобных инструментов для Excel, которые можно бесплатно попробовать без ограничений в течение 30 дней. Загрузите и получите бесплатную пробную версию прямо сейчас!
Читайте также: