Страницы: 1
RSS
Выбор диапазона в другом файле. Vba
 
У меня есть код ,  помощью которого мне нужно выделять определенный диапазон в другом файле, но не получается, все равно выделяется диапазон в файле, из которого запускается макрос. Если добавлю sh.Range - не работает, если просто Range оставить, выделяет в листе с макросом. Нужно выделять диапазон из файла Ghbvth1.xlsx, листа Ghbvth2. Прошу помощи.

Код
Option Explicit
Const FILE_NAME = "Ghbvth1.xlsx"
Const SHEET_NAME = "Ghbvth2"
Sub ClearCont()
Dim wb As Workbook
Set wb = Workbooks(FILE_NAME)
Dim sh As Worksheet
Set sh = wb.Sheets(SHEET_NAME)        
Dim LastCell As Range
        Dim Stalo As Range
        Set Stalo = sh.Cells.Find("Стало")   'Ищем ячейку Стало
            Set LastCell = sh.Cells(Rows.Count, Stalo.Column).End(xlToLeft)
            Range(Cells(Stalo.Row + 1, Stalo.Column), Cells(LastCell.Row, Stalo.Column)).Select
               Selection.ClearContents
End Sub
 
Код
Option Explicit

Const FILE_NAME = "Ghbvth1.xlsx"
Const SHEET_NAME = "Ghbvth2"

Sub ClearCont()
    Dim wb As Workbook
    Set wb = Workbooks(FILE_NAME)
    Dim sh As Worksheet
    Set sh = wb.Sheets(SHEET_NAME)
    Dim LastCell As Range
    Dim Stalo As Range
    wb.Activate
    sh.Select
    Set Stalo = sh.Cells.Find("Стало")   'Ищем ячейку Стало
    Set LastCell = sh.Cells(Rows.Count, Stalo.Column).End(xlToLeft)
    Range(Cells(Stalo.Row + 1, Stalo.Column), Cells(LastCell.Row, Stalo.Column)).Select
    Selection.ClearContents
End Sub

Sub ClearContWithoutSelect()
    Dim wb As Workbook
    Set wb = Workbooks(FILE_NAME)
    Dim sh As Worksheet
    Set sh = wb.Sheets(SHEET_NAME)
    Dim LastCell As Range
    Dim Stalo As Range
    Set Stalo = sh.Cells.Find("Стало")   'Ищем ячейку Стало
    Set LastCell = sh.Cells(Rows.Count, Stalo.Column).End(xlToLeft)
    sh.Range(sh.Cells(Stalo.Row + 1, Stalo.Column), sh.Cells(LastCell.Row, Stalo.Column)).ClearContents
End Sub
Изменено: МатросНаЗебре - 12.10.2021 10:36:03
 
тестируйте

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
МатросНаЗебре, JayBhagavan, спасибо большое!
Страницы: 1
Наверх