Указать диапазон умной таблицы А1 и последняя яч. столбца С 
				   
 
 
 Gjlhzl  
 Дата: Четверг, 26.01.2023, 12:28 | 
 Сообщение № 1     
   
 
   
 
 
 Группа: Проверенные  
 
 
 Ранг: Форумчанин  
 
 Сообщений:  138 
 
 
 
 
  Репутация:    
 0    
 ±  
 
  
 Замечаний:
 0%   ±  
             
  
 
 
 Макросом создаю умную таблицу как прописать диапазон начало А1 конец последняя ячейка со значением по столбцу С [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "ФБ"
 [/vba] выдает ошибку как правильно должно быть? просто рядом с таблицей создается другая умная таблица и при таком варианте [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1").CurrentRegion, , xlYes).Name = "ФБ"
 [/vba] таблицы пересекаются и первая поглощает диапазон второй таблицы  
 
 
Макросом создаю умную таблицу как прописать диапазон начало А1 конец последняя ячейка со значением по столбцу С [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "ФБ"
 [/vba] выдает ошибку как правильно должно быть? просто рядом с таблицей создается другая умная таблица и при таком варианте [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1").CurrentRegion, , xlYes).Name = "ФБ"
 [/vba] таблицы пересекаются и первая поглощает диапазон второй таблицы Gjlhzl  
 
Сообщение отредактировал Gjlhzl  - Четверг, 26.01.2023, 12:34 
  
  
  
 Ответить 
Сообщение Макросом создаю умную таблицу как прописать диапазон начало А1 конец последняя ячейка со значением по столбцу С [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "ФБ"
 [/vba] выдает ошибку как правильно должно быть? просто рядом с таблицей создается другая умная таблица и при таком варианте [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1").CurrentRegion, , xlYes).Name = "ФБ"
 [/vba] таблицы пересекаются и первая поглощает диапазон второй таблицы Автор - Gjlhzl  Дата добавления - 26.01.2023  в 12:28   
 
 
 _Boroda_  
 Дата: Четверг, 26.01.2023, 12:36 | 
 Сообщение № 2     
   
 
  
   
 
 
 Группа: Админы  
 
 
 Ранг: Местный житель  
 
 Сообщений:  16956 
 
 
 
 
  Репутация:    
 6631    
 ±  
 
  
 Замечаний:
    ±  
   2003; 2007; 2010; 2013 RUS          
  
 
 
 Какую ошибку?  Чему равно LastRow? 
 
 
Какую ошибку?  Чему равно LastRow? _Boroda_  
 
Скажи мне, кудесник, любимец ба’гов...    Платная помощь:    Boroda_Excel@mail.ru    Яндекс-деньги:  41001632713405  |  Webmoney:  R289877159277; Z102172301748; E177867141995    
  
  
  
 Ответить 
Сообщение Какую ошибку?  Чему равно LastRow? Автор - _Boroda_  Дата добавления - 26.01.2023  в 12:36   
 
 
 Gjlhzl  
 Дата: Четверг, 26.01.2023, 12:40 | 
 Сообщение № 3     
   
 
   
 
 
 Группа: Проверенные  
 
 
 Ранг: Форумчанин  
 
 Сообщений:  138 
 
 
 
 
  Репутация:    
 0    
 ±  
 
  
 Замечаний:
 0%   ±  
             
  
 
 
 _Boroda_ , должно быть последней строке со значением по правде все методом тыка и грамматики VBA не знаю,пробую ...все методом тыка с разных вариантов) думаю  [vba]Код
 lLastRow = Cells(Rows.Count, "С").End(xlUp).Row
 [/vba] наверно типа переменную нужно объявлять? не знаю как 
 
 
_Boroda_ , должно быть последней строке со значением по правде все методом тыка и грамматики VBA не знаю,пробую ...все методом тыка с разных вариантов) думаю  [vba]Код
 lLastRow = Cells(Rows.Count, "С").End(xlUp).Row
 [/vba] наверно типа переменную нужно объявлять? не знаю какGjlhzl  
 
Сообщение отредактировал Gjlhzl  - Четверг, 26.01.2023, 12:43 
  
  
  
 Ответить 
Сообщение _Boroda_ , должно быть последней строке со значением по правде все методом тыка и грамматики VBA не знаю,пробую ...все методом тыка с разных вариантов) думаю  [vba]Код
 lLastRow = Cells(Rows.Count, "С").End(xlUp).Row
 [/vba] наверно типа переменную нужно объявлять? не знаю какАвтор - Gjlhzl  Дата добавления - 26.01.2023  в 12:40   
 
 
 _Boroda_  
 Дата: Четверг, 26.01.2023, 12:53 | 
 Сообщение № 4     
   
 
  
   
 
 
 Группа: Админы  
 
 
 Ранг: Местный житель  
 
 Сообщений:  16956 
 
 
 
 
  Репутация:    
 6631    
 ±  
 
  
 Замечаний:
    ±  
   2003; 2007; 2010; 2013 RUS          
  
 
 
 Весь код-то покажите уже. А так - все правильно написано. Для активного листа если 
 
 
Весь код-то покажите уже. А так - все правильно написано. Для активного листа если _Boroda_  
 
Скажи мне, кудесник, любимец ба’гов...    Платная помощь:    Boroda_Excel@mail.ru    Яндекс-деньги:  41001632713405  |  Webmoney:  R289877159277; Z102172301748; E177867141995    
  
  
  
 Ответить 
Сообщение Весь код-то покажите уже. А так - все правильно написано. Для активного листа если Автор - _Boroda_  Дата добавления - 26.01.2023  в 12:53   
 
 
 Gjlhzl  
 Дата: Четверг, 26.01.2023, 13:39 | 
 Сообщение № 5     
   
 
   
 
 
 Группа: Проверенные  
 
 
 Ранг: Форумчанин  
 
 Сообщений:  138 
 
 
 
 
  Репутация:    
 0    
 ±  
 
  
 Замечаний:
 0%   ±  
             
  
 
 
 _Boroda_ , цель макроса - с файла Данные скопировать и вставить данные таблиц1,2 в файл Копия на лист один лист после создать из них умные таблицы [vba]Код
Sub Копировать()     Dim lLastRow As Long     Dim MyPath As String     Dim wb1 As String     wb1 = "Копия.xlsb"     MyPath = ThisWorkbook.Path & "\" & wb1     Workbooks.Open Filename:=MyPath    Windows("Данные.xlsb").Activate     Range("Таблица1[#All]").Copy     Windows("Копия.xlsb").Activate     Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("A1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 3).End(xlUp).Row      ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "БД" ActiveSheet.ListObjects("БД").TableStyle = "TableStyleMedium2" Windows("Данные.xlsb").Activate     Range("Таблица2[#All]").Copy     Windows("Копия.xlsb").Activate     Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("D1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False              ActiveSheet.ListObjects.Add(xlSrcRange, Range("$D$1").CurrentRegion, , xlYes).Name = "БД2"     ActiveSheet.ListObjects("БД2").TableStyle = "TableStyleMedium2" End Sub
 [/vba] ошибка на  [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "БД"
 [/vba] 
 
 
_Boroda_ , цель макроса - с файла Данные скопировать и вставить данные таблиц1,2 в файл Копия на лист один лист после создать из них умные таблицы [vba]Код
Sub Копировать()     Dim lLastRow As Long     Dim MyPath As String     Dim wb1 As String     wb1 = "Копия.xlsb"     MyPath = ThisWorkbook.Path & "\" & wb1     Workbooks.Open Filename:=MyPath    Windows("Данные.xlsb").Activate     Range("Таблица1[#All]").Copy     Windows("Копия.xlsb").Activate     Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("A1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 3).End(xlUp).Row      ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "БД" ActiveSheet.ListObjects("БД").TableStyle = "TableStyleMedium2" Windows("Данные.xlsb").Activate     Range("Таблица2[#All]").Copy     Windows("Копия.xlsb").Activate     Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("D1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False              ActiveSheet.ListObjects.Add(xlSrcRange, Range("$D$1").CurrentRegion, , xlYes).Name = "БД2"     ActiveSheet.ListObjects("БД2").TableStyle = "TableStyleMedium2" End Sub
 [/vba] ошибка на  [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "БД"
 [/vba]Gjlhzl  
 
Сообщение отредактировал Gjlhzl  - Четверг, 26.01.2023, 13:41 
  
  
  
 Ответить 
Сообщение _Boroda_ , цель макроса - с файла Данные скопировать и вставить данные таблиц1,2 в файл Копия на лист один лист после создать из них умные таблицы [vba]Код
Sub Копировать()     Dim lLastRow As Long     Dim MyPath As String     Dim wb1 As String     wb1 = "Копия.xlsb"     MyPath = ThisWorkbook.Path & "\" & wb1     Workbooks.Open Filename:=MyPath    Windows("Данные.xlsb").Activate     Range("Таблица1[#All]").Copy     Windows("Копия.xlsb").Activate     Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("A1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 3).End(xlUp).Row      ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "БД" ActiveSheet.ListObjects("БД").TableStyle = "TableStyleMedium2" Windows("Данные.xlsb").Activate     Range("Таблица2[#All]").Copy     Windows("Копия.xlsb").Activate     Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("D1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False              ActiveSheet.ListObjects.Add(xlSrcRange, Range("$D$1").CurrentRegion, , xlYes).Name = "БД2"     ActiveSheet.ListObjects("БД2").TableStyle = "TableStyleMedium2" End Sub
 [/vba] ошибка на  [vba]Код
ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(LastRow, 3)), , xlYes).Name = "БД"
 [/vba]Автор - Gjlhzl  Дата добавления - 26.01.2023  в 13:39   
 
 
 Gjlhzl  
 Дата: Четверг, 26.01.2023, 16:41 | 
 Сообщение № 6     
   
 
   
 
 
 Группа: Проверенные  
 
 
 Ранг: Форумчанин  
 
 Сообщений:  138 
 
 
 
 
  Репутация:    
 0    
 ±  
 
  
 Замечаний:
 0%   ±  
             
  
 
 
 вопрос решился [vba]Код
Sub Копировать()     Dim lLastRow As Long     Dim MyPath As String     Dim wb1 As String     wb1 = "Копия.xlsb"     MyPath = ThisWorkbook.Path & "\" & wb1     Workbooks.Open Filename:=MyPath Windows("Данные.xlsb").Activate     Range("Таблица1[#All]").Copy     Windows("Копия.xlsb").Activate     Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("A1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 3).End(xlUp).Row      ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(lLastRow, 3)), , xlYes).Name = "БД" ActiveSheet.ListObjects("БД").TableStyle = "TableStyleMedium2" Windows("Данные.xlsb").Activate     Range("Таблица2[#All]").Copy     Windows("Копия.xlsb").Activate     Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("D1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 5).End(xlUp).Row          ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 5), Cells(lLastRow, 5)), , xlYes).Name = "БД2" ActiveSheet.ListObjects("БД2").TableStyle = "TableStyleMedium2" End Sub
 [/vba] вместо LastRow нужно lLastRow  
 
 
вопрос решился [vba]Код
Sub Копировать()     Dim lLastRow As Long     Dim MyPath As String     Dim wb1 As String     wb1 = "Копия.xlsb"     MyPath = ThisWorkbook.Path & "\" & wb1     Workbooks.Open Filename:=MyPath Windows("Данные.xlsb").Activate     Range("Таблица1[#All]").Copy     Windows("Копия.xlsb").Activate     Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("A1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 3).End(xlUp).Row      ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(lLastRow, 3)), , xlYes).Name = "БД" ActiveSheet.ListObjects("БД").TableStyle = "TableStyleMedium2" Windows("Данные.xlsb").Activate     Range("Таблица2[#All]").Copy     Windows("Копия.xlsb").Activate     Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("D1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 5).End(xlUp).Row          ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 5), Cells(lLastRow, 5)), , xlYes).Name = "БД2" ActiveSheet.ListObjects("БД2").TableStyle = "TableStyleMedium2" End Sub
 [/vba] вместо LastRow нужно lLastRow Gjlhzl  
 
  
  
  
 Ответить 
Сообщение вопрос решился [vba]Код
Sub Копировать()     Dim lLastRow As Long     Dim MyPath As String     Dim wb1 As String     wb1 = "Копия.xlsb"     MyPath = ThisWorkbook.Path & "\" & wb1     Workbooks.Open Filename:=MyPath Windows("Данные.xlsb").Activate     Range("Таблица1[#All]").Copy     Windows("Копия.xlsb").Activate     Range("A1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("A1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 3).End(xlUp).Row      ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 1), Cells(lLastRow, 3)), , xlYes).Name = "БД" ActiveSheet.ListObjects("БД").TableStyle = "TableStyleMedium2" Windows("Данные.xlsb").Activate     Range("Таблица2[#All]").Copy     Windows("Копия.xlsb").Activate     Range("D1").PasteSpecial Paste:=xlPasteValuesAndNumberFormats, Operation:= _         xlNone, SkipBlanks:=False, Transpose:=False     Range("D1").PasteSpecial Paste:=xlPasteColumnWidths, Operation:=xlNone, _         SkipBlanks:=False, Transpose:=False     lLastRow = Cells(Rows.Count, 5).End(xlUp).Row          ActiveSheet.ListObjects.Add(xlSrcRange, Range(Cells(1, 5), Cells(lLastRow, 5)), , xlYes).Name = "БД2" ActiveSheet.ListObjects("БД2").TableStyle = "TableStyleMedium2" End Sub
 [/vba] вместо LastRow нужно lLastRow Автор - Gjlhzl  Дата добавления - 26.01.2023  в 16:41