Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Макрос копирующий данные в столбец по датам - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос копирующий данные в столбец по датам (Макросы/Sub)
Макрос копирующий данные в столбец по датам
Ruslan454 Дата: Вторник, 28.01.2020, 20:17 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Кто нибудь может помочь с макросом?, плиз. Нужно чтоб он копировал данные из столбца "B" и вставлял в нужный столбец в таблице, где столбцы пронумерована по числам, то есть по дням.
Если к примеру сегодня 28, то он вставляет в 28 столбец, а завтра соответственно уже в 29 и т.д.
К сообщению приложен файл: EXT.xlsx (10.3 Kb)
 
Ответить
СообщениеКто нибудь может помочь с макросом?, плиз. Нужно чтоб он копировал данные из столбца "B" и вставлял в нужный столбец в таблице, где столбцы пронумерована по числам, то есть по дням.
Если к примеру сегодня 28, то он вставляет в 28 столбец, а завтра соответственно уже в 29 и т.д.

Автор - Ruslan454
Дата добавления - 28.01.2020 в 20:17
Ruslan454 Дата: Вторник, 28.01.2020, 21:15 | Сообщение № 2
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Ребят, кто нибудь поможет нубу?))) Искал тут тему, думал может есть что похожее, но так и не нашел. Помогите, пожалуйста!
 
Ответить
СообщениеРебят, кто нибудь поможет нубу?))) Искал тут тему, думал может есть что похожее, но так и не нашел. Помогите, пожалуйста!

Автор - Ruslan454
Дата добавления - 28.01.2020 в 21:15
Kuzmich Дата: Вторник, 28.01.2020, 22:05 | Сообщение № 3
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 155 ±
Замечаний: 0% ±

Excel 2003
[vba]
Код
Sub Perenos()
Dim iLastRow As Long
Dim ColumnDate As Integer
iLastRow = Cells(Rows.Count, "B").End(xlUp).Row
ColumnDate = Rows(1).Find(Day(Date), , xlFormulas, xlWhole).Column
Range("B2:B" & iLastRow).Copy Cells(2, ColumnDate)
End Sub
[/vba]


Сообщение отредактировал Kuzmich - Вторник, 28.01.2020, 22:06
 
Ответить
Сообщение[vba]
Код
Sub Perenos()
Dim iLastRow As Long
Dim ColumnDate As Integer
iLastRow = Cells(Rows.Count, "B").End(xlUp).Row
ColumnDate = Rows(1).Find(Day(Date), , xlFormulas, xlWhole).Column
Range("B2:B" & iLastRow).Copy Cells(2, ColumnDate)
End Sub
[/vba]

Автор - Kuzmich
Дата добавления - 28.01.2020 в 22:05
Ruslan454 Дата: Вторник, 28.01.2020, 22:24 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Kuzmich, Огромное спасибо, подходит!
 
Ответить
СообщениеKuzmich, Огромное спасибо, подходит!

Автор - Ruslan454
Дата добавления - 28.01.2020 в 22:24
Ruslan454 Дата: Вторник, 28.01.2020, 23:18 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Kuzmich, а можно суммировать значения в столбик с датой? А то если там уже есть значения то просто заменит. Что то я не подумал сразу(((
 
Ответить
СообщениеKuzmich, а можно суммировать значения в столбик с датой? А то если там уже есть значения то просто заменит. Что то я не подумал сразу(((

Автор - Ruslan454
Дата добавления - 28.01.2020 в 23:18
gling Дата: Вторник, 28.01.2020, 23:27 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2519
Репутация: 674 ±
Замечаний: 0% ±

2010
Ещё вариант с суммой. Если правильно понял[vba]
Код
Sub Kopiya()
Dim j As Long
For j = 4 To 35
    With ActiveSheet
    If .Cells(1, j).Value = Format(Now, "D") * 1 Then
        .Range(.Cells(2, j), .Cells(23, j)) = .Range("B2:B23").Value
        .Cells(24, j) = Application.Sum(.Range("B2:B23").Value)
    End If
End With
Next
End Sub
[/vba]


ЯД-41001506838083
 
Ответить
СообщениеЕщё вариант с суммой. Если правильно понял[vba]
Код
Sub Kopiya()
Dim j As Long
For j = 4 To 35
    With ActiveSheet
    If .Cells(1, j).Value = Format(Now, "D") * 1 Then
        .Range(.Cells(2, j), .Cells(23, j)) = .Range("B2:B23").Value
        .Cells(24, j) = Application.Sum(.Range("B2:B23").Value)
    End If
End With
Next
End Sub
[/vba]

Автор - gling
Дата добавления - 28.01.2020 в 23:27
Kuzmich Дата: Вторник, 28.01.2020, 23:27 | Сообщение № 7
Группа: Проверенные
Ранг: Ветеран
Сообщений: 711
Репутация: 155 ±
Замечаний: 0% ±

Excel 2003
[vba]
Код

Range("B2:B" & iLastRow).Copy
Cells(2, ColumnDate).PasteSpecial xlPasteValues, xlPasteSpecialOperationAdd
[/vba]
 
Ответить
Сообщение[vba]
Код

Range("B2:B" & iLastRow).Copy
Cells(2, ColumnDate).PasteSpecial xlPasteValues, xlPasteSpecialOperationAdd
[/vba]

Автор - Kuzmich
Дата добавления - 28.01.2020 в 23:27
Ruslan454 Дата: Вторник, 28.01.2020, 23:30 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Kuzmich, Да СПС огромное, всё работает!
 
Ответить
СообщениеKuzmich, Да СПС огромное, всё работает!

Автор - Ruslan454
Дата добавления - 28.01.2020 в 23:30
Ruslan454 Дата: Вторник, 28.01.2020, 23:31 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
gling, Спасибо за отклик, уже решили.
 
Ответить
Сообщениеgling, Спасибо за отклик, уже решили.

Автор - Ruslan454
Дата добавления - 28.01.2020 в 23:31
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Макрос копирующий данные в столбец по датам (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!