#excel #xml #vba
#excel #xml #vba
Вопрос:
У меня есть Excel, он содержит много табличных и графических данных, из которых я хочу выбрать только две строки и преобразовать их в XML-файл с помощью VBA. То, что я пробовал ранее, содержит выделение всех строк и столбцов, но я хочу выбрать строку от 2 до 3 и столбец от J до T. Что я пробовал до сих пор:
Sub FindUsedRange()
Dim LastRow As Long
Dim FirstRow As Long
Dim LastCol As Integer
Dim FirstCol As Integer
' Find the FIRST real row
FirstRow = ActiveSheet.Cells.Find(What:="*", _
SearchDirection:=xlNext, _
SearchOrder:=xlByRows).Row
' Find the FIRST real column
FirstCol = ActiveSheet.Cells.Find(What:="*", _
SearchDirection:=xlNext, _
SearchOrder:=xlByColumns).Column
' Find the LAST real row
LastRow = ActiveSheet.Cells.Find(What:="*", _
SearchDirection:=xlPrevious, _
SearchOrder:=xlByRows).Row
' Find the LAST real column
LastCol = ActiveSheet.Cells.Find(What:="*", _
SearchDirection:=xlPrevious, _
SearchOrder:=xlByColumns).Column
'Select the ACTUAL Used Range as identified by the
'variables identified above
'MsgBox (FirstRow amp; "," amp; LastRow amp; "," amp; FirstCol amp; "," amp; LastCol)
Dim topCel As Range
Dim bottomCel As Range
Set topCel = Cells(FirstRow, FirstCol)
Set bottomCel = Cells(LastRow, LastCol)
ActiveSheet.Range(topCel, bottomCel).Select
End Sub
Но он возвращает все на активном листе. Я хочу выбрать из (от J2 до T3), то есть из столбца J и строки 2 в столбец T и строку 3. Это фиксированный формат, поэтому мы можем напрямую указать номер строки и столбца.Но я не знаю, как изменить эту функцию.
Комментарии:
1. Если вы знаете диапазон, просто используйте
Dim rng as range: Set rng = Range("J2:T3")
Ответ №1:
Dim cellvalue as range:Set cellvalue = Range("J2:T3")
У меня это сработало.