Страницы: 1
RSS
добавление столбца с запросом
 
Есть файл, от недели к неделе, на листе добавляются колонки,(текущий месяц, разбивается по недельно) причем в середине,с группировкой данных . Для работы с файлом требуется добавить 3 столбца с формулами.    
Подскажите как объяснить Excel-ю, что надо добавить, новые столбцы и вставить рассчетные значения, именно, справа от указанного столбца. поскольку анализировать надо поледниюю неделю. Видится как вопрос при выполнении макроа  " укажите столбец",    
 
если, где то обсуждалось ткните, поиск не помог.
 
21 просмотр и не одного ответа. задача не решаемая?
 
Как раз просмотрел перед Вашим вопросом. Что нужно?
 
{quote}{login=vikttur}{date=17.12.2010 10:29}{thema=}{post}Как раз просмотрел перед Вашим вопросом. Что нужно?{/post}{/quote}  
нужно что бы макрос спросил:  
1.где добавитьновый столбец,    
2.из  какого столбца брать данные. остальное наверное сам наваяю.    
с макросами только начинаю разбираться и  не сталкивался с диалогами.  
пример прикрепил новый, справа от столбцов с синим шрифтом, надо будет добавить еще по три столбца с формулами.  
проблема в том, что, на следующей неделе, в колонке Y будут данные не за месяц, а за прошедшую неделю.
 
{quote}{login=}{date=17.12.2010 11:33}{thema=Re: }{post}{quote}{login=vikttur}{date=17.12.2010 10:29}{thema=}{post}{/post}{/quote}2.из  какого столбца брать данные.{/post}{/quote}  
Узнали. Например, столбец 23. Что дальше?
 
после указания столбца, выполняется вот это.  
проблема в том,что в файле переодически добавляются столбцы , а  макрос начнет считать по указанным колонкам.    
 
Sub Макрос1()  
'  
' Макрос1 Макрос  
' Макрос записан 17.12.2010 (Customer)  
'  
 
'  
   Columns("X:X").Select  
   Columns("Y:AA").Select  
   Selection.Insert Shift:=xlToRight  
   Range("Y3").Select  
   ActiveCell.FormulaR1C1 = "=RC[-1]/R2C24"
   Range("Y3").Select  
   Selection.AutoFill Destination:=Range("Y3:Y8"), Type:=xlFillDefault  
   Range("Y3:Y8").Select  
   Selection.NumberFormat = "0.0%"  
   Range("Z2").Select  
   ActiveCell.FormulaR1C1 = "=RC[-2]-RC[-3]"
   Range("Z2").Select  
   Selection.AutoFill Destination:=Range("Z2:Z8"), Type:=xlFillDefault  
   Range("Z2:Z8").Select  
   Range("AA2").Select  
   ActiveCell.FormulaR1C1 = "=RC[-3]/RC[-4]"
   Range("AA2").Select  
   Selection.AutoFill Destination:=Range("AA2:AA8"), Type:=xlFillDefault  
   Range("AA2:AA8").Select  
   Columns("X:X").Select  
   Selection.Insert Shift:=xlToRight  
   Range("X3").Select  
   ActiveCell.FormulaR1C1 = "=RC[-1]/R2C23"
   Range("X3").Select  
   Selection.AutoFill Destination:=Range("X3:X8"), Type:=xlFillDefault  
   Range("X3:X8").Select  
   Range("X2:X8").Select  
   Range("X12").Select  
End Sub
 
Юрий М  
сорри, предидущее соббщение мое, не туда ваше имя вставил. :)  
не специально, честно :)
 
Держите.
 
{quote}{login=Юрий М}{date=18.12.2010 12:12}{thema=}{post}Держите.{/post}{/quote}  
ок. спасибо, то что и требовалось. Дальше буду сам разбираться.
 
Юрий, еще подскажите пожалуйста:  
в конечном итоге должно получаться вот это(см вложение), там же вопрос.    
p.s. Убедился, что учиться, учиться и еще раз учиться... великая мысль!
 
Просто запищите копирование этих столбцов и их вставку. Полученный код вставьте вместо последнего MsgBox.
Страницы: 1
Читают тему
Loading...