Макрос (на кнопке) для изменения строки, в которой находится курсор

288
Rainer

Я хочу иметь возможность иметь кнопку на листе Excel, поместить курсор на любую строку / столбец на листе, нажать кнопку, и вся строка, определенная строкой / столбцом курсора, изменится (заливка цветом и, возможно, переместится на другой предварительно определенный лист). ).

Кто-нибудь может предложить мне несколько советов?

-1
Что ты уже пробовал? Хотите знать, как вывести кнопку на лист? Вы застряли в части кода «заполнение цветом или перемещение ячейки»? Где именно ты в этом? Prasanna 8 лет назад 2

2 ответа на вопрос

0
Rainer

Мне удалось создать этот код с помощью вкладов в этом и других подобных форумах. Поскольку я новичок в VBS, этот код выглядит сложным, но он делает то, что мне было нужно.

Я создал 4 листа и 4 кнопки. Каждый лист включает в себя 3 кнопки. Каждая кнопка позволяет вырезать, вставлять и окрашивать строку, которая была предварительно выбрана щелчком мыши по любой ячейке в строке. 3 кнопки относятся к 3 другим листам. Таким образом, линии могут перемещаться между 4 листами и будут соответственно окрашены.

Sub Button2_Click() Application.ScreenUpdating = False  Dim strSheetName, strCellAddress As String strSheetName = ActiveSheet.Name strCellAddress = ActiveCell.Address(False, False)  Rows(ActiveCell.Row).Cut Sheets("Active").Select Range("A4").Rows("1:1").Insert Shift:=xlDown Range("A4").Interior.Color = RGB(0, 255, 0) Application.CutCopyMode = False  Range("A" & ActiveCell.Row).Select Sheets(strSheetName).Select Range(strCellAddress).Select  Rows(ActiveCell.Row).Delete  Application.ScreenUpdating = True End Sub 
Если это ответ, пожалуйста, отметьте его как таковой :) Dave 8 лет назад 0
-1
Sven

You can use ActiveCell.Address in your macro, which returns the address of the currently selected cell or another attribute of ActiveCell.

Example to fill the entire row of the active cell with red when clicking the button Button1:

Sub Button1_Click() ActiveCell.EntireRow.Interior.Color = RGB(255, 0, 0) End Sub 
Я назначил кнопку и успешно использовал «ActiveCell.EntireRow.Interior.Color». Я борюсь с перемещением ряда на другой лист. Любой указатель / образец поможет. Также есть ли справочник команд, который вы бы порекомендовали для поиска других команд? Rainer 8 лет назад 0
Я должен добавить, что теперь я создал 4 кнопки с 4 разными цветами для статуса 1 ... 4. Идея теперь состоит в том, что строка мгновенно перемещается на конкретный лист, связанный с цветом строк, в тот момент, когда цвет назначается кнопкой. Rainer 8 лет назад 0
Пожалуйста, уточните лучше, чего вы пытаетесь достичь. Строки не могут «мгновенно перейти» на «конкретный» лист, «связанный с ...». Это очень нечетко то, что вы говорите. Sven 8 лет назад 0

Похожие вопросы