Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Распределение данных по листам книги с помощью макроса - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Распределение данных по листам книги с помощью макроса (Формулы/Formulas, Макросы/Macros)
Распределение данных по листам книги с помощью макроса
Vselennaya Дата: Среда, 06.06.2018, 07:21 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Здравствуйте! Очень прошу вашей помощи. Моих познаний в Excel оказалось недостаточно для поставленной задачи. Есть файл сводный. Надо раскидать данный файла по листам книги согласно названию листа. Уже руками каждый месяц сил нету это делать. Может есть формула или с написанием макроса поможете. Буду рада любой информации.
К сообщению приложен файл: _1.xlsm (23.8 Kb)
 
Ответить
СообщениеЗдравствуйте! Очень прошу вашей помощи. Моих познаний в Excel оказалось недостаточно для поставленной задачи. Есть файл сводный. Надо раскидать данный файла по листам книги согласно названию листа. Уже руками каждый месяц сил нету это делать. Может есть формула или с написанием макроса поможете. Буду рада любой информации.

Автор - Vselennaya
Дата добавления - 06.06.2018 в 07:21
StoTisteg Дата: Среда, 06.06.2018, 10:05 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Это одноразово или подразумевается, что на исходном листе потом могут новые данные появиться?


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
СообщениеЭто одноразово или подразумевается, что на исходном листе потом могут новые данные появиться?

Автор - StoTisteg
Дата добавления - 06.06.2018 в 10:05
StoTisteg Дата: Среда, 06.06.2018, 12:04 | Сообщение № 3
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
Держите. Костыли, конечно, ужасны, но оптимизировать одноразовый код как-то лень.
[vba]
Код
   Public Лист As String
   Public Строка As Long, Итого(1 To 3) As Long

Sub Разнос()

   Dim Шапка As Range
   Dim i As Long
   
   Лист = "qwe"
   With Worksheets(1)
      Set Шапка = .Range(.Cells(14, 2), .Cells(14, 16))
      For i = 15 To .Cells(Rows.Count, 6).End(xlUp).Row
         If InStr(1, .Cells(i, 4).Value, Лист, vbTextCompare) = 1 And .Cells(i, 4).Value <> "" Then
            .Rows(i).Copy Destination:=Worksheets(Лист & "").Rows(Строка)
            Строка = Строка + 1
            Else
               If .Cells(i, 4).Value <> "" Then
                  If Лист <> "qwe" Then Call Оформление
                  Лист = IIf(IsNumeric(.Cells(i, 4).Value), .Cells(i, 4).Value, Left(.Cells(i, 4).Value, Len(.Cells(i, 4).Value) - 1))
                  Worksheets.Add after:=Worksheets(Sheets.Count)
                  ActiveSheet.Name = Лист
                  Шапка.Copy Destination:=Cells(14, 2)
                  With Cells(14, 17)
                     .Value = "Кол-во( суммарно)"
                     .Orientation = 90
                     Cells(14, 16).Copy
                     .PasteSpecial Paste:=xlPasteFormats
                  End With
                  .Rows(i).Copy Destination:=Worksheets(Лист & "").Rows(15)
                  Строка = 16
                  Итого(1) = 0
                  Итого(2) = 0
                  Итого(3) = 0
                  Else
                     If .Cells(i, 2) = "Итого по обычному" Then
                        Итого(1) = Итого(1) + .Cells(i, 6).Value
                        Итого(2) = Итого(2) + .Cells(i, 7).Value
                        Итого(3) = Итого(3) + .Cells(i, 8).Value
                     End If
               End If
         End If
      Next i
      Call Оформление
   End With

End Sub

Sub Оформление()

   Dim j As Long

   With Worksheets(Лист & "")
      For j = 1 To 3
         .Cells(Строка, j + 5).Value = Итого(j)
         .Cells(Строка + 2, j + 5).Value = Итого(j)
      Next j
      .Cells(Строка, 2).Value = "Итого по обычному"
      .Cells(Строка + 2, 2).Value = "Всего"
      With Worksheets(1)
         .Cells(.Cells(Rows.Count, 2).End(xlUp).Row, 2).Copy
      End With
      .Range(.Cells(Строка + 2, 2), .Cells(Строка + 2, 17)).PasteSpecial Paste:=xlPasteFormats
      With .Range(.Cells(14, 2), .Cells(Строка + 2, 17))
         .Borders(xlInsideVertical).Weight = xlThin
         .Borders(xlInsideHorizontal).Weight = xlThin
         .Borders(xlEdgeBottom).Weight = xlThin
         .Borders(xlEdgeRight).Weight = xlThin
      End With
      For j = 15 To Строка - 1
         .Cells(j, 2).Value = j - 14
      Next j
   End With

End Sub
[/vba]
К сообщению приложен файл: 5724249.xlsm (29.2 Kb)


Интуитивно понятный код - это когда интуитивно понятно, что это код.

Сообщение отредактировал StoTisteg - Среда, 06.06.2018, 12:05
 
Ответить
СообщениеДержите. Костыли, конечно, ужасны, но оптимизировать одноразовый код как-то лень.
[vba]
Код
   Public Лист As String
   Public Строка As Long, Итого(1 To 3) As Long

Sub Разнос()

   Dim Шапка As Range
   Dim i As Long
   
   Лист = "qwe"
   With Worksheets(1)
      Set Шапка = .Range(.Cells(14, 2), .Cells(14, 16))
      For i = 15 To .Cells(Rows.Count, 6).End(xlUp).Row
         If InStr(1, .Cells(i, 4).Value, Лист, vbTextCompare) = 1 And .Cells(i, 4).Value <> "" Then
            .Rows(i).Copy Destination:=Worksheets(Лист & "").Rows(Строка)
            Строка = Строка + 1
            Else
               If .Cells(i, 4).Value <> "" Then
                  If Лист <> "qwe" Then Call Оформление
                  Лист = IIf(IsNumeric(.Cells(i, 4).Value), .Cells(i, 4).Value, Left(.Cells(i, 4).Value, Len(.Cells(i, 4).Value) - 1))
                  Worksheets.Add after:=Worksheets(Sheets.Count)
                  ActiveSheet.Name = Лист
                  Шапка.Copy Destination:=Cells(14, 2)
                  With Cells(14, 17)
                     .Value = "Кол-во( суммарно)"
                     .Orientation = 90
                     Cells(14, 16).Copy
                     .PasteSpecial Paste:=xlPasteFormats
                  End With
                  .Rows(i).Copy Destination:=Worksheets(Лист & "").Rows(15)
                  Строка = 16
                  Итого(1) = 0
                  Итого(2) = 0
                  Итого(3) = 0
                  Else
                     If .Cells(i, 2) = "Итого по обычному" Then
                        Итого(1) = Итого(1) + .Cells(i, 6).Value
                        Итого(2) = Итого(2) + .Cells(i, 7).Value
                        Итого(3) = Итого(3) + .Cells(i, 8).Value
                     End If
               End If
         End If
      Next i
      Call Оформление
   End With

End Sub

Sub Оформление()

   Dim j As Long

   With Worksheets(Лист & "")
      For j = 1 To 3
         .Cells(Строка, j + 5).Value = Итого(j)
         .Cells(Строка + 2, j + 5).Value = Итого(j)
      Next j
      .Cells(Строка, 2).Value = "Итого по обычному"
      .Cells(Строка + 2, 2).Value = "Всего"
      With Worksheets(1)
         .Cells(.Cells(Rows.Count, 2).End(xlUp).Row, 2).Copy
      End With
      .Range(.Cells(Строка + 2, 2), .Cells(Строка + 2, 17)).PasteSpecial Paste:=xlPasteFormats
      With .Range(.Cells(14, 2), .Cells(Строка + 2, 17))
         .Borders(xlInsideVertical).Weight = xlThin
         .Borders(xlInsideHorizontal).Weight = xlThin
         .Borders(xlEdgeBottom).Weight = xlThin
         .Borders(xlEdgeRight).Weight = xlThin
      End With
      For j = 15 To Строка - 1
         .Cells(j, 2).Value = j - 14
      Next j
   End With

End Sub
[/vba]

Автор - StoTisteg
Дата добавления - 06.06.2018 в 12:04
Kuzmich Дата: Среда, 06.06.2018, 17:36 | Сообщение № 4
Группа: Проверенные
Ранг: Ветеран
Сообщений: 712
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
Надо раскидать данный файла по листам книги согласно названию листа

А номер в столбце D всегда состоит из трех цифр?
Что должно быть в столбце Q - Кол-во( суммарно)?
 
Ответить
Сообщение
Цитата
Надо раскидать данный файла по листам книги согласно названию листа

А номер в столбце D всегда состоит из трех цифр?
Что должно быть в столбце Q - Кол-во( суммарно)?

Автор - Kuzmich
Дата добавления - 06.06.2018 в 17:36
Kuzmich Дата: Пятница, 08.06.2018, 17:30 | Сообщение № 5
Группа: Проверенные
Ранг: Ветеран
Сообщений: 712
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Может ли быть ситуация, когда номер в столбце D есть, а соответствующего листа нет?
Нужно ли тогда создавать новый лист?
 
Ответить
СообщениеМожет ли быть ситуация, когда номер в столбце D есть, а соответствующего листа нет?
Нужно ли тогда создавать новый лист?

Автор - Kuzmich
Дата добавления - 08.06.2018 в 17:30
Vselennaya Дата: Понедельник, 18.06.2018, 07:16 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
StoTisteg, Спасибо большое! А подскажите , если форма таблицы поменялась и два столбца убрались, как сделать так чтоб макрос работал?
К сообщению приложен файл: 6758687.xlsm (23.7 Kb)
 
Ответить
СообщениеStoTisteg, Спасибо большое! А подскажите , если форма таблицы поменялась и два столбца убрались, как сделать так чтоб макрос работал?

Автор - Vselennaya
Дата добавления - 18.06.2018 в 07:16
Vselennaya Дата: Понедельник, 18.06.2018, 07:23 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Kuzmich, Да может и надо чтоб он создавал новые листы для новых номеров. В идеале надо чтоб я просто вставляла исходный файл, запускала макрос и он по листам раскидывал данные. Там еще после таблицы шапочка будет и над таблицей шапочка. Ещё бы ее заполнять. Там в шапочке номер указан будет (столбец D), а внизу в шапочку данные будут вставляться из таблицы тоже и из еще одной таблички с итоговыми значениями. Так вот вопрос возможно ли сделать так чтоб еще и шапочка заполнялась?
 
Ответить
СообщениеKuzmich, Да может и надо чтоб он создавал новые листы для новых номеров. В идеале надо чтоб я просто вставляла исходный файл, запускала макрос и он по листам раскидывал данные. Там еще после таблицы шапочка будет и над таблицей шапочка. Ещё бы ее заполнять. Там в шапочке номер указан будет (столбец D), а внизу в шапочку данные будут вставляться из таблицы тоже и из еще одной таблички с итоговыми значениями. Так вот вопрос возможно ли сделать так чтоб еще и шапочка заполнялась?

Автор - Vselennaya
Дата добавления - 18.06.2018 в 07:23
Vselennaya Дата: Понедельник, 18.06.2018, 07:25 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
StoTisteg, Новые данные будут каждый месяц добавляться и меняться. Номер из столбца D будет тот же, но будут новые добавляться номера с каждым месяцем
 
Ответить
СообщениеStoTisteg, Новые данные будут каждый месяц добавляться и меняться. Номер из столбца D будет тот же, но будут новые добавляться номера с каждым месяцем

Автор - Vselennaya
Дата добавления - 18.06.2018 в 07:25
Vselennaya Дата: Понедельник, 18.06.2018, 07:33 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
StoTisteg, Это далеко не одноразовый код. Мне с этим годами теперь работать и данные буду только расти и увеличиваться. %)
 
Ответить
СообщениеStoTisteg, Это далеко не одноразовый код. Мне с этим годами теперь работать и данные буду только расти и увеличиваться. %)

Автор - Vselennaya
Дата добавления - 18.06.2018 в 07:33
boa Дата: Понедельник, 18.06.2018, 11:38 | Сообщение № 10
Группа: Друзья
Ранг: Ветеран
Сообщений: 551
Репутация: 167 ±
Замечаний: 0% ±

365
Vselennaya,
А подскажите , если форма таблицы поменялась и два столбца убрались, как сделать так чтоб макрос работал?

закомментировал строки в которые внес изменения
К сообщению приложен файл: 6306992.xlsm (33.9 Kb)


 
Ответить
СообщениеVselennaya,
А подскажите , если форма таблицы поменялась и два столбца убрались, как сделать так чтоб макрос работал?

закомментировал строки в которые внес изменения

Автор - boa
Дата добавления - 18.06.2018 в 11:38
Kuzmich Дата: Понедельник, 18.06.2018, 12:06 | Сообщение № 11
Группа: Проверенные
Ранг: Ветеран
Сообщений: 712
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
[vba]
Код

Sub iNomer()
Dim i As Long
Dim iLastRow As Long
Dim iLR As Long
Dim FoundCell As Range
Dim FAdr As String
Dim FAdr_Row As Long
Dim EAdr_Row As Long
Dim n As Integer
With CreateObject("scripting.dictionary"): .comparemode = 1
    n = 15
    iLastRow = Cells(Rows.Count, "C").End(xlUp).Row
    Range("S15:S" & Cells(Rows.Count, "S").End(xlUp).Row).ClearContents
  For i = 15 To iLastRow      'выделяем из столбца C уникальные трехзначные номера
    If Cells(i, "C") <> "" Then
      If Not .exists(Left(Cells(i, "C").Value, 3)) Then
        'если нет слова, то добавляем его в словарь и в столбец S
        .Add Left(Cells(i, "C").Value, 3), 1
        Cells(n, "S") = Left(Cells(i, "C").Value, 3)
        n = n + 1
      End If
    End If
  Next
End With
     iLastRow = Cells(Rows.Count, "S").End(xlUp).Row
  For i = 15 To iLastRow                     'цикл по уникальным номерам в S
    Set FoundCell = Columns(3).Find(Cells(i, "S"), , xlValues, xlPart)
     If Not FoundCell Is Nothing Then
      FAdr = FoundCell.Address
      FAdr_Row = FoundCell.Row               'первая строка с уникальным номером
      Do
        EAdr_Row = FoundCell.Row             'последняя строка с уникальным номером
        Set FoundCell = Columns(3).FindNext(FoundCell)
      Loop While FoundCell.Address <> FAdr
     End If
     With Worksheets(CStr(Cells(i, "S")))
       'очищаем диапазон на соответствующем листе
       .Range("B15:N" & .Cells(.Rows.Count, "B").End(xlUp).Row + 1).Clear
       'копируем диапазон от первой до последней строки + 2 уникального номера
       Range("B" & FAdr_Row & ":N" & EAdr_Row + 2).Copy .Range("B15")
       iLR = .Cells(.Rows.Count, "B").End(xlUp).Row
       .Range("B" & iLR + 1) = "Всего"
       .Range("D" & iLR + 1) = Application.Sum(.Range("D15:D" & iLR))
       .Range("E" & iLR + 1) = Application.Sum(.Range("E15:E" & iLR))
       .Range("F" & iLR + 1) = Application.Sum(.Range("F15:F" & iLR))
       .Range("N" & iLR + 1) = Application.Sum(.Range("N15:N" & iLR))
       For n = iLR To 15 Step -1    'удаляем строки на соответствующем листе с Итого
         If .Cells(n, "B") Like "Итого*" Then
           .Rows(n).Delete
         End If
       Next
     End With
  Next
End Sub
[/vba]


Сообщение отредактировал Kuzmich - Понедельник, 18.06.2018, 12:08
 
Ответить
Сообщение[vba]
Код

Sub iNomer()
Dim i As Long
Dim iLastRow As Long
Dim iLR As Long
Dim FoundCell As Range
Dim FAdr As String
Dim FAdr_Row As Long
Dim EAdr_Row As Long
Dim n As Integer
With CreateObject("scripting.dictionary"): .comparemode = 1
    n = 15
    iLastRow = Cells(Rows.Count, "C").End(xlUp).Row
    Range("S15:S" & Cells(Rows.Count, "S").End(xlUp).Row).ClearContents
  For i = 15 To iLastRow      'выделяем из столбца C уникальные трехзначные номера
    If Cells(i, "C") <> "" Then
      If Not .exists(Left(Cells(i, "C").Value, 3)) Then
        'если нет слова, то добавляем его в словарь и в столбец S
        .Add Left(Cells(i, "C").Value, 3), 1
        Cells(n, "S") = Left(Cells(i, "C").Value, 3)
        n = n + 1
      End If
    End If
  Next
End With
     iLastRow = Cells(Rows.Count, "S").End(xlUp).Row
  For i = 15 To iLastRow                     'цикл по уникальным номерам в S
    Set FoundCell = Columns(3).Find(Cells(i, "S"), , xlValues, xlPart)
     If Not FoundCell Is Nothing Then
      FAdr = FoundCell.Address
      FAdr_Row = FoundCell.Row               'первая строка с уникальным номером
      Do
        EAdr_Row = FoundCell.Row             'последняя строка с уникальным номером
        Set FoundCell = Columns(3).FindNext(FoundCell)
      Loop While FoundCell.Address <> FAdr
     End If
     With Worksheets(CStr(Cells(i, "S")))
       'очищаем диапазон на соответствующем листе
       .Range("B15:N" & .Cells(.Rows.Count, "B").End(xlUp).Row + 1).Clear
       'копируем диапазон от первой до последней строки + 2 уникального номера
       Range("B" & FAdr_Row & ":N" & EAdr_Row + 2).Copy .Range("B15")
       iLR = .Cells(.Rows.Count, "B").End(xlUp).Row
       .Range("B" & iLR + 1) = "Всего"
       .Range("D" & iLR + 1) = Application.Sum(.Range("D15:D" & iLR))
       .Range("E" & iLR + 1) = Application.Sum(.Range("E15:E" & iLR))
       .Range("F" & iLR + 1) = Application.Sum(.Range("F15:F" & iLR))
       .Range("N" & iLR + 1) = Application.Sum(.Range("N15:N" & iLR))
       For n = iLR To 15 Step -1    'удаляем строки на соответствующем листе с Итого
         If .Cells(n, "B") Like "Итого*" Then
           .Rows(n).Delete
         End If
       Next
     End With
  Next
End Sub
[/vba]

Автор - Kuzmich
Дата добавления - 18.06.2018 в 12:06
Vselennaya Дата: Понедельник, 18.06.2018, 15:32 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
boa, макрос оформление выдает ошибку 9, а при формировании ошибка 1004. Может я что-то не то делаю?
 
Ответить
Сообщениеboa, макрос оформление выдает ошибку 9, а при формировании ошибка 1004. Может я что-то не то делаю?

Автор - Vselennaya
Дата добавления - 18.06.2018 в 15:32
Vselennaya Дата: Понедельник, 18.06.2018, 15:49 | Сообщение № 13
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Kuzmich, Спасибо. А как сделать так, чтобы шапочка автомотически смещалась вниз под каждой таблицей. Под шапочкой подразумевается текстовые данные, где будет указан за какой период сформирован акт, место для подписей и фамилий. И еще марос не корректно работает с номерами с индексами. Он один номер из перечня с индексами добавляет в предыдущую вкладку. И почему- то не воспринимает номера, где впереди "0" стоит. В идеале он должен просто игнорировать "0" перед номера. Это чисто человеческий фактор. Кто-то ставит "0", кто-то нет
 
Ответить
СообщениеKuzmich, Спасибо. А как сделать так, чтобы шапочка автомотически смещалась вниз под каждой таблицей. Под шапочкой подразумевается текстовые данные, где будет указан за какой период сформирован акт, место для подписей и фамилий. И еще марос не корректно работает с номерами с индексами. Он один номер из перечня с индексами добавляет в предыдущую вкладку. И почему- то не воспринимает номера, где впереди "0" стоит. В идеале он должен просто игнорировать "0" перед номера. Это чисто человеческий фактор. Кто-то ставит "0", кто-то нет

Автор - Vselennaya
Дата добавления - 18.06.2018 в 15:49
boa Дата: Понедельник, 18.06.2018, 16:11 | Сообщение № 14
Группа: Друзья
Ранг: Ветеран
Сообщений: 551
Репутация: 167 ±
Замечаний: 0% ±

365
Vselennaya,
макрос оформление выдает ошибку 9, а при формировании ошибка 1004. Может я что-то не то делаю?

удалите сформированные листы :)


 
Ответить
СообщениеVselennaya,
макрос оформление выдает ошибку 9, а при формировании ошибка 1004. Может я что-то не то делаю?

удалите сформированные листы :)

Автор - boa
Дата добавления - 18.06.2018 в 16:11
Kuzmich Дата: Понедельник, 18.06.2018, 16:23 | Сообщение № 15
Группа: Проверенные
Ранг: Ветеран
Сообщений: 712
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
чтобы шапочка автоматически смещалась вниз под каждой таблицей

Шапочка с фамилиями будет разной для разных таблиц?
Цитата
марос не корректно работает с номерами с индексами

Опишите в чем некорректность?
Цитата
не воспринимает номера, где впереди "0" стоит

В номере есть 0, а в имени листа его нет?
 
Ответить
Сообщение
Цитата
чтобы шапочка автоматически смещалась вниз под каждой таблицей

Шапочка с фамилиями будет разной для разных таблиц?
Цитата
марос не корректно работает с номерами с индексами

Опишите в чем некорректность?
Цитата
не воспринимает номера, где впереди "0" стоит

В номере есть 0, а в имени листа его нет?

Автор - Kuzmich
Дата добавления - 18.06.2018 в 16:23
Vselennaya Дата: Вторник, 19.06.2018, 07:30 | Сообщение № 16
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Kuzmich, шапочка будет одинаковой, но в ней будут цифры согласно каждому акту проставляться. У меня будет отдельная таблица откуда ссылочками проставляться данные должны в эту шапочку. Я пример вложила шапочки. И вордовский документ показывает, где именно не корректно. Просто на файле с примером все хорошо, а на свои данные, когда макрос делаю, получается , что берет одну строку с последующего листа в предыдущий. Да. В номере есть "о" впереди, а в листе нет. Может можно просто в исходном файле впереди стоящие нули убирать. Просто они там не принципиально нужны.
К сообщению приложен файл: 0051669.xlsm (33.3 Kb)
 
Ответить
СообщениеKuzmich, шапочка будет одинаковой, но в ней будут цифры согласно каждому акту проставляться. У меня будет отдельная таблица откуда ссылочками проставляться данные должны в эту шапочку. Я пример вложила шапочки. И вордовский документ показывает, где именно не корректно. Просто на файле с примером все хорошо, а на свои данные, когда макрос делаю, получается , что берет одну строку с последующего листа в предыдущий. Да. В номере есть "о" впереди, а в листе нет. Может можно просто в исходном файле впереди стоящие нули убирать. Просто они там не принципиально нужны.

Автор - Vselennaya
Дата добавления - 19.06.2018 в 07:30
Vselennaya Дата: Вторник, 19.06.2018, 07:31 | Сообщение № 17
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Kuzmich,
 
Ответить
СообщениеKuzmich,

Автор - Vselennaya
Дата добавления - 19.06.2018 в 07:31
Vselennaya Дата: Вторник, 19.06.2018, 07:35 | Сообщение № 18
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Kuzmich,
 
Ответить
СообщениеKuzmich,

Автор - Vselennaya
Дата добавления - 19.06.2018 в 07:35
Kuzmich Дата: Вторник, 19.06.2018, 09:14 | Сообщение № 19
Группа: Проверенные
Ранг: Ветеран
Сообщений: 712
Репутация: 156 ±
Замечаний: 0% ±

Excel 2003
Цитата
У меня будет отдельная таблица откуда ссылочками проставляться данные должны в эту шапочку

Где эта таблица?
Цитата
И вордовский документ показывает, где именно не корректно

Документа не вижу
Цитата
Да. В номере есть "о" впереди, а в листе нет.

В примере вы так и не отразили это.
 
Ответить
Сообщение
Цитата
У меня будет отдельная таблица откуда ссылочками проставляться данные должны в эту шапочку

Где эта таблица?
Цитата
И вордовский документ показывает, где именно не корректно

Документа не вижу
Цитата
Да. В номере есть "о" впереди, а в листе нет.

В примере вы так и не отразили это.

Автор - Kuzmich
Дата добавления - 19.06.2018 в 09:14
Vselennaya Дата: Вторник, 19.06.2018, 13:23 | Сообщение № 20
Группа: Пользователи
Ранг: Новичок
Сообщений: 18
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Kuzmich, таблицу в примере добавила из которой данные в шапочку будут идти. И еще файл прикрепила, где не корректно получается расстановка. Это уже примерные мои данные. Там просто номера могут быть и 3 и 4 -значные в будущем.
К сообщению приложен файл: 2278990.xlsm (89.3 Kb) · 2061576.xlsm (36.7 Kb)
 
Ответить
СообщениеKuzmich, таблицу в примере добавила из которой данные в шапочку будут идти. И еще файл прикрепила, где не корректно получается расстановка. Это уже примерные мои данные. Там просто номера могут быть и 3 и 4 -значные в будущем.

Автор - Vselennaya
Дата добавления - 19.06.2018 в 13:23
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Распределение данных по листам книги с помощью макроса (Формулы/Formulas, Макросы/Macros)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!