Вывести в таблицу определенное количество записей - VBA

Узнай цену своей работы

Формулировка задачи:

Есть ячейка ("W4") на листе ("КомпьюВеда") в которой указано количество единиц техники. В ячейке ("C4") лежит наименование техники. Необходимо нажатием кнопки перенести на лист ("Лист1") в список столько наименований сколько указано в ячейке ("W4"). Список длится от Range("B6:B53"). Скриншот прилагаю. Есть коды. Я с ними весь день толкаюсь.
Листинг программы
  1. Private Sub CommandButton3_Click()
  2. For i = 0 To 5
  3. If Sheets("КомпьюВеда").Range("W4") > 0 Then
  4. Sheets("Лист1").Cells(i, 1) = Sheets("КомпьюВеда").Range("C4")
  5. End If
  6. Next i
  7. * * *
  8. schet = Sheets("КомпьюВеда").Range("W4")
  9. If schet > 0 Then
  10. nam = Sheets("КомпьюВеда").Range("C4")
  11. 'Sheets("Лист1").Range("B6:B60") = nam
  12. End If
  13. schet = Sheets("Лист1").Cells(1, 6)
  14. Sheets("Лист1").Cells(6 + schet, 2) = nam
  15. End Sub

Решение задачи: «Вывести в таблицу определенное количество записей»

textual
Листинг программы
  1. Public Sub Stepan888()
  2. If Workbooks("888.xlsm").Worksheets("КомпьюВеда").Range("W4").Value > 0 Then
  3. Dim S As String
  4. S = Workbooks("888.xlsm").Worksheets("КомпьюВеда").Range("W4").Value + 5
  5. Workbooks("888.xlsm").Worksheets("Лист1").Range("A2:A49").ClearContents
  6. Workbooks("888.xlsm").Worksheets("КомпьюВеда").Activate
  7. Range("C6:C" & S).Select
  8. Selection.Copy
  9. Workbooks("888.xlsm").Worksheets("Лист1").Activate
  10. Range("A2").Select
  11.     Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  12.         :=False, Transpose:=False
  13. Application.CutCopyMode = False
  14. End If
  15. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4.2 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут