Определить расположение строки и колонки - VB

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

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

Выделить цветом нулевые значения и определить расположение (т.е. номер строки и номер колонки) первого из них относительно начала диапазона. Я только выделила цветом нулевые значения, но не получается определить расположение 1 из них относительно начала. Исправьте плз
Листинг программы
  1. Public Sub Диапазон_ячеек()
  2. Dim KP As Integer, KN As Integer, KO As Integer
  3. Dim NR As Integer, NC As Integer
  4. Dim NumOfRow As Integer, NumOfCol As Integer
  5. Dim Item As Variant, i As Integer, j As Integer
  6. NR = Selection.Rows.Count
  7. NC = Selection.Columns.Count
  8. NumOfRow = Selection.Row
  9. NumOfCol = Selection.Column
  10. For i = 1 To NR
  11. For j = 1 To NC
  12. Item = Selection.Cells(i, j)
  13. If IsNumeric(Item) Then
  14. If Item = 0 Then
  15. KP = KP + 1
  16. Selection.Cells(i, j).Font.Color = vbRed
  17. End If
  18. If Item > 0 Then KN = KN + 1
  19. If Item < 0 Then KO = KO + 1
  20. End If
  21. Next j
  22. Next i
  23. Cells(NumOfRow, NumOfCol + NC) = KP
  24. Cells(NumOfRow, NumOfCol + NC + 1) = "Количество (+) значений"
  25. Cells(NumOfRow + 1, NumOfCol + NC) = KN
  26. Cells(NumOfRow + 1, NumOfCol + NC + 1) = "Количество нулевых значений"
  27. Cells(NumOfRow + 2, NumOfCol + NC) = KO
  28. Cells(NumOfRow + 2, NumOfCol + NC + 1) = "Количество (-) значений"
  29. End Sub

Решение задачи: «Определить расположение строки и колонки»

textual
Листинг программы
  1. Public Sub Диапазон_ячеек()
  2.  
  3. Dim KP As Integer, KN As Integer, KO As Integer
  4. Dim NR As Integer, NC As Integer
  5. Dim NumOfRow As Integer, NumOfCol As Integer
  6. Dim Item As Variant, i As Integer, j As Integer
  7. NR = Selection.Rows.Count
  8. NC = Selection.Columns.Count
  9. NumOfRow = Selection.Row
  10. NumOfCol = Selection.Column
  11. For i = 1 To NR
  12.     For j = 1 To NC
  13.         Item = Selection.Cells(i, j)
  14.         If IsNumeric(Item) Then
  15.             If Item = 0 Then
  16.                 If KP = 0 Then
  17.                     Cells(NumOfRow + 3, NumOfCol + NC) = i & " - строка первого нулевого"
  18.                     Cells(NumOfRow + 3, NumOfCol + NC + 1) = j & " - столбец первого нулевого"
  19.                 End If
  20.                 KP = KP + 1
  21.                 Selection.Cells(i, j).Font.Color = vbRed
  22.             End If
  23.             If Item > 0 Then KN = KN + 1
  24.             If Item < 0 Then KO = KO + 1
  25.         End If
  26.     Next j
  27. Next i
  28. Cells(NumOfRow, NumOfCol + NC) = KP
  29. Cells(NumOfRow, NumOfCol + NC + 1) = "Количество (+) значений"
  30. Cells(NumOfRow + 1, NumOfCol + NC) = KN
  31. Cells(NumOfRow + 1, NumOfCol + NC + 1) = "Количество нулевых значений"
  32. Cells(NumOfRow + 2, NumOfCol + NC) = KO
  33. Cells(NumOfRow + 2, NumOfCol + NC + 1) = "Количество (-) значений"
  34.  
  35. End Sub

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


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

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

13   голосов , оценка 3.769 из 5

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

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

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