Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 15.07.2009, 10:21   #1
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию Из бухгалтерии. Шахматка

Номеров счетов в бухучёте куча. Если сделать шахматку и предусмотреть всевозможные варианты корреспонденции счетов, то никакого Excel`a не хватит. Поэтому оставляем только нужные. Но жизнь штук непредсказуемая и иногда приходится составлять нестандартные проводки.
Так вот вопрос следующий. Вставляем новую строчку, допустим между 42 и 43 строкой. Таким образом бывшая 42 строка стала 43. Может ли Excel по этому событию вставить новый столбец между AQ и AR, тогда столбец AR станет столбцом AS.
kzld вне форума Ответить с цитированием
Старый 15.07.2009, 10:46   #2
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Столбец фиксированный или зависит от номера вставленной строки? строки
pivas вне форума Ответить с цитированием
Старый 15.07.2009, 10:49   #3
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от pivas Посмотреть сообщение
Столбец фиксированный или зависит от номера вставленной строки? строки
Новый столбец зависит от вновь вставляемой строки
kzld вне форума Ответить с цитированием
Старый 15.07.2009, 10:56   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Можно. Опишите задачу вставки более подробно.
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 15.07.2009, 11:39   #5
slan
Форумчанин
 
Аватар для slan
 
Регистрация: 30.01.2008
Сообщений: 314
По умолчанию

проверять соответствие количества строк и столбцов при событии change листа..
slan вне форума Ответить с цитированием
Старый 15.07.2009, 12:22   #6
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от slan Посмотреть сообщение
проверять соответствие количества строк и столбцов при событии change листа..
Оба на. Сам не ожидал. Был созданный мною лист Excel.
В столбце шли циферки. Теперь эти циферки надо было прописать в строку. На форуме нашёл формулу =ТРАНСП(C3:C53)
Попробовал свою задачу. Вуаля - столбец автоматически вставляется при вставке новой строки
См. пример
Вложения
Тип файла: rar shahmatka.rar (14.8 Кб, 38 просмотров)
kzld вне форума Ответить с цитированием
Старый 15.07.2009, 12:39   #7
slan
Форумчанин
 
Аватар для slan
 
Регистрация: 30.01.2008
Сообщений: 314
По умолчанию

нет не совсем так..

столбцов не вставляет, просто формула переписывается, включая новую строку(т.е было трансп(с1:с54) - стало трансп(с1:с55) ), но если посмотреть до конца вправо, то одного столбца(последнего) не хватает..
slan вне форума Ответить с цитированием
Старый 15.07.2009, 12:43   #8
kzld
Форумчанин
 
Регистрация: 24.01.2009
Сообщений: 625
По умолчанию

Цитата:
Сообщение от kzld Посмотреть сообщение
Оба на. Сам не ожидал. Был созданный мною лист Excel.
В столбце шли циферки. Теперь эти циферки надо было прописать в строку. На форуме нашёл формулу =ТРАНСП(C3:C53)
Попробовал свою задачу. Вуаля - столбец автоматически вставляется при вставке новой строки
См. пример
Рано обрадовался. В самом первом файле цифирок в столбце было несколько многовато, потому функция =ТРАНСП(C3:C53) понаделала мне много лишних столбцов, которые я не смог ни очистить, ни вырезать. Потому я их временно скрыл.
Так что задача остаётся
Вложения
Тип файла: rar shahmatka1.rar (10.0 Кб, 23 просмотров)
kzld вне форума Ответить с цитированием
Старый 15.07.2009, 14:38   #9
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Так не подойдёт?
Код:
Sub StrStolb()
    i = InputBox("Введите номер новой строки")
    Rows(i).Insert Shift:=xlDown
    Columns(i+0).Insert Shift:=xlToRight
End Sub

Последний раз редактировалось pivas; 15.07.2009 в 15:27. Причина: попраил буквы
pivas вне форума Ответить с цитированием
Старый 15.07.2009, 20:26   #10
pivas
Форумчанин
 
Регистрация: 03.04.2009
Сообщений: 412
По умолчанию

Или по двойному клику в любой ячейке строки:
Код:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    Rows(ActiveCell.Rows.Row).Insert Shift:=xlDown
    Columns(ActiveCell.Rows.Row + 0).Insert Shift:=xlToRight
End Sub
pivas вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Программа для бухгалтерии symBIOS Фриланс 6 22.12.2008 20:20