Вставка данных в ту же строку, что кнопка находится в
Я создал макрос, который копирует данные с одного листа на другой. Я хочу обобщенный макрос, который копирует данные из того же номера строки, что и кнопка, вместо B2
как указано ниже в коде.
В настоящее время этот код работает нормально; текст кнопки обновляется, и MacroA
назначается MacroA
. Я читал о topleftcell
, но не смог его реализовать.
Sub MacroA() ' ' MacroA Macro ' Range("I2:J2").Select Selection.Copy Range("B2").Select Selection.Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True Range("D2").Select Cells.Find(What:="", After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _ False, SearchFormat:=False).Activate ActiveSheet.Paste Application.CutCopyMode = False ActiveWorkbook.Save ActiveWindow.Close End Sub
- Макро, который ищет с именем ячейку из набора элементов из списка и находит его на другом листе
- VBA, как переименовать все кнопки в листе
- Excel - Как создать кнопку при событии Workbook_Open
- Поворот текста на 90 градусов по кнопке VBA
- Создайте командную кнопку и назначьте ей событие в программе
- Экспорт Jtable в файл excel
- Добавьте код excel vba к кнопке, используя c #
- Excel 2007 Проблема: предварительно запрограммированные кнопки внезапно не работают
- Нажмите вторую кнопку img в VBA
- Excel VBA: Формула слишком сложна для объекта
- Excel переименовывает элементы управления ActiveX на других компьютерах
- Ссылка на командные кнопки, добавленные во время выполнения с VBA в Excel
- Кнопка макроса Excel для перемещения вверх страницы ошибок наверху
Непроверенный, но может помочь вам …
Sub Tester() Dim c As Range, sht As Worksheet Dim d As Range Set sht = ActiveSheet Set c = sht.Shapes(Application.Caller).TopLeftCell sht.Cells(c.Row, 2).Hyperlinks(1).Follow NewWindow:=False, AddHistory:=True With ActiveSheet Set d = .Cells.Find(What:="", After:=.Range("D2"), LookIn:=xlFormulas, _ LookAt:=xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, _ MatchCase:=False, SearchFormat:=False) sht.Range("I2:J2").Copy d .Parent.Save .Parent.Close End With Application.CutCopyMode = False End Sub