Strinteijer |
18-09-2016 18:20 2669898 |
Office Excel - передача данных между листами
Добрый день! Подскажите кто-нибудь возможно ли сделать так, чтобы данные со второго листа передавались на первый, фишка в том, чтобы именно на втором листе были формулы, а на первом только данные. Первый лист получается основной.
Спасибо заранее за ответ, ну или какие альтернативные варианты можете предложить.
|
Цитата:
Цитата Strinteijer
возможно ли сделать так, чтобы данные со второго листа передавались на первый, фишка в том, чтобы именно на втором листе были формулы, а на первом только данные. »
|
Нет, нельзя. Любые ссылки из ячейки куда-то — это формулы.
Цитата:
Цитата Strinteijer
ну или какие альтернативные варианты можете предложить. »
|
1. Ручками выделить данные на втором листе, скопировать в буфер обмена, переключиться на первый лист, сделать Специальную вставку, указав вставлять только данные.
2. То же самое, только макросом.
3. Написать функцию рабочего листа, которая будет вызываться при каждом изменении/пересчёте данных и будет делать указанное в первом пункте.
Вы не написали главного — зачем Вам такой серфинг в извращённой форме это?
|
Strinteijer |
18-09-2016 22:14 2669977 |
Скажем так, чтобы мое начальство отправляло "чистый лист" только с данными своим верхам=)
|
Strinteijer |
18-09-2016 22:33 2669983 |
Цитата:
Цитата Iska
1. Ручками выделить данные на втором листе, скопировать в буфер обмена, переключиться на первый лист, сделать Специальную вставку, указав вставлять только данные.
2. То же самое, только макросом.
3. Написать функцию рабочего листа, которая будет вызываться при каждом изменении/пересчёте данных и будет делать указанное в первом пункте. »
|
Подумаю над этими вариантами.... В принципе может и покатит первый вариант для них.... за совет спасибо))
Просто хочется сделать так, чтобы потом из-за этой ерунды не вызывали помочь разобраться, что начальник делает не так.... P.S. они у меня совсем далеки от компьютеров
|
Цитата:
Цитата Strinteijer
Скажем так, чтобы мое начальство отправляло "чистый лист" только с данными своим верхам »
|
Тогда есть смысл сделать им «Одну кнопку», нажатием на которую будет запускаться макрос, который из создаст новый документ в определённом месте под определённым именем, скопирует туда содержимое значений ячеек текущего листа активного документа. Как Вам такое?
Сразу скажите — в Вашей версии Office сохранилась возможность добавлять свои кнопки на панели инструментов и привязывать к ним макросы (у меня Office 2003)?
|
Strinteijer, выделите диапазон с данными, скопируйте, на нужном листе через специальную вставку вставьте "Связанный рисунок". Классная вещь!
Обновляются данные - обновляется рисунок. Если же меняются параметры диапазона (кол-во строк или столбцов), то на рисунке достаточно исправить параметры диапазона
|
Strinteijer |
19-09-2016 00:09 2670006 |
Цитата:
Цитата okshef
скопируйте, на нужном листе через специальную вставку вставьте "Связанный рисунок". Классная вещь! »
|
в вашем варианте я так полагаю если его отделить от файла то в рисунке данные превратятся в нули.... или же все таки нет?
Цитата:
Цитата Iska
Сразу скажите — в Вашей версии Office сохранилась возможность добавлять свои кнопки на панели инструментов и привязывать к ним макросы (у меня Office 2003) »
|
У меня Office 2007 и я уже не помню даже как это делается, сам этим занимался раньше на 2003)
|
А категория указана — 2010 ;).
|
Strinteijer |
19-09-2016 00:29 2670010 |
А нее покопался нашел где это)
Ой ошибся чутка)))
В общем, а само тело кнопки как должно выглядеть, чтобы оно перезаписало данные с этого листа и создавало новую книгу для сохранения?
|
Strinteijer, что вы имеете в виду под "отделить от файла"?
Как я понял эту "отвязку": со связанным рисунком с данными, находящимися в другом файле, я не экспериментировал. Но вы и не говорили о разных файлах.
P.S. Сменил категорию
|
Strinteijer |
19-09-2016 21:08 2670289 |
Цитата:
Цитата okshef
Но вы и не говорили о разных файлах »
|
Да извиняюсь что данного в самом начале не указал, но и саму тему на скорую руку сочинял....
Цитата:
Цитата Iska
Тогда есть смысл сделать им «Одну кнопку», нажатием на которую будет запускаться макрос »
|
Вот вроде сделал макросс, но как чтоб чисто данные копировал, пока только вышло скопировать ячейки
Sub Сохранить()
Range("A3:BL34").Select
Selection.Copy
ChDir "C:\Users\Алексей\Desktop"
Workbooks.Open Filename:="Основной.xlsx"
Range("A3:BL34").Select
ActiveSheet.Paste
ActiveWorkbook.Save
ActiveWorkbook.Close
End Sub
|
Strinteijer |
19-09-2016 23:17 2670313 |
Считай сделал макрос, но мне нужна некоторая помощь, подскажите как выбрать книгу, которую нужно закрыть? запарился чет)
|
Strinteijer |
20-09-2016 01:34 2670332 |
Всё спасибо всем за советы, пару часов повозился и все таки сделал то, что хотел;) Вопрос решен... Всех благ вам=)
|
Цитата:
Цитата Strinteijer
а само тело кнопки как должно выглядеть, чтобы оно перезаписало данные с этого листа и создавало новую книгу для сохранения? »
|
Примерно так:
Скрытый текст
Код:
Option Explicit
Sub Sample()
Dim objWorksheet As Worksheet
Dim i As Integer
Set objWorksheet = ActiveWorkbook.ActiveSheet
With Workbooks.Add
objWorksheet.Copy Before:=.Worksheets.Item(1)
Application.DisplayAlerts = False
For i = .Worksheets.Count To 2 Step -1
.Worksheets.Item(i).Delete
Next i
Application.DisplayAlerts = True
With .Worksheets.Item(1)
With .UsedRange
.Copy
.PasteSpecial Paste:=xlPasteValues
End With
.Range("A1").Select
End With
Application.DisplayAlerts = False
.SaveAs Filename:="C:\Мои проекты\0009\Output Result.xls"
Application.DisplayAlerts = True
.Close
End With
Set objWorksheet = Nothing
End Sub
Макрос можно поместить в персональную книгу макросов и, например, привязать его вызов на комбинацию горячих клавиш.
|
Strinteijer |
20-09-2016 16:44 2670529 |
Цитата:
Цитата Iska
For i = .Worksheets.Count To 2 Step -1
.Worksheets.Item(i).Delete
Next i »
|
А что этот цикл делает?
Цитата:
Цитата Iska
.SaveAs Filename:="C:\Мои проекты\0009\Output Result.xls" »
|
и да я помню как то можно делать с помощью всплывающего окна, т.е. выбирать куда сохранить и как обозвать
Ну а так я уже сделал макрос, правда другим способом
|
Цитата:
Цитата Strinteijer
А что этот цикл делает? »
|
Удаляет все листы (пустые) из только что созданной Рабочей книги за исключением только что вставленного.
Цитата:
Цитата Strinteijer
и да я помню как то можно делать с помощью всплывающего окна, т.е. выбирать куда сохранить и как обозвать »
|
Там прямо в справке приведён пример (правда, кривой):
Код:
Set NewBook = Workbooks.Add
Do
fName = Application.GetSaveAsFilename
Loop Until fName <> False
NewBook.SaveAs Filename:=fName
|
Strinteijer |
20-09-2016 17:13 2670554 |
Ммм спасибки на заметку себе оставлю... Думаю еще пригодится и не раз=)
|
Время: 11:10.
© OSzone.net 2001-