Страницы: 1
RSS
Можно ли в примечание вставить формулу?
 
Подскажите, пожалуйста, такую вещь (покажу на примере)

У меня в ячейках А1, А2... А50 написаны поставщики, в ячейках В1, В2... В50 годовой бюджет, который можно на данного поставщика потратить.

Можно ли ко всем ячейкам столбца В добавить примечание с формулой, которая делит значение ячейки на 12? (т.о. образом я всегда смогу увидеть, сколько могу в месяц потратить на данного поставщика, не добавляя для этого отдельный столбик и не нагружая таблицу)

Спасибо!
 
Примечания еще больше нагружают файл :)
 
DAB, формулы нельзя, константы можно
Код
Sub Da()
Dim c As Range
  Range("B:B").ClearComments
  For Each c In Range("B:B").SpecialCells(xlCellTypeConstants, xlNumbers)
    c.AddComment CStr(Round(c / 12, 0))
  Next
End Sub
 
Не могли бы Вы доделать код так, чтобы он сам запускался при каждом изменении значения в ячейках и при добавлении значений в пустые ячейки следующих строк? Заранее спасибо!
Изменено: DAB - 20.01.2019 02:42:40
 
Цитата
DAB написал:
чтобы он сам запускался при каждом изменении значения в ячейках
в совокупностью с #2  файл будет не супер быстрым. Ведь при каждом пересчете придется изменять примечания или контролировать было ли изменение в конкретных ячейках. Чем вас не устраивает дополнительный столбец? Тем что таблица становится чуть больше? Ну сделайте группировку и открывайте его только когда нужно посмотреть.
По вопросам из тем форума, личку не читаю.
 
Мне казалось эстетически так будет лучше (я не себе делаю). Визуально чем меньше столбцов, тем лучше воспринимается таблица. Так что если данные нужны редко (иногда посмотреть, каков месячный бюджет, исходя из годового), нет смысла нагружать таблицу лишним столбцом  

Скажите, может быть, что в 13-ом офисе этот макрос не работает? У меня на работе в 7-ом сработал, в 13-ом - нет
-
Изменено: DAB - 20.01.2019 20:41:31
 
Цитата
DAB написал:
нет смысла нагружать таблицу лишним столбцом  
но как вам уже написали, при каждом чихе будут прописываться комменты, или сравниваться и прописываться при изменении, а это нагрузит таблицу, не визуально, а в обработке.
По вопросам из тем форума, личку не читаю.
 
Понятно, спасибо!
 
DAB, в модуль листа (правый клик на ярлычке листа - Исходный текст). Можно менять сразу несколько ячеек в столбце (автозаполнение, вставка, стирание)
Код
Private Sub Worksheet_Change(ByVal Target As Range)
Dim c As Range
  Set Target = Intersect(Target, Columns(2), UsedRange)
  If Target Is Nothing Then Exit Sub
  For Each c In Target
    If Not c.Comment Is Nothing Then c.Comment.Delete
    If VarType(c.Value) = vbDouble Then c.AddComment CStr(Round(c / 12, 2))
  Next
End Sub
 
Большое спасибо!
Страницы: 1
Наверх