Школоло / Говнокод #2990 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
  15. 15
  16. 16
  17. 17
  18. 18
  19. 19
  20. 20
  21. 21
  22. 22
  23. 23
  24. 24
  25. 25
  26. 26
  27. 27
  28. 28
  29. 29
  30. 30
  31. 31
  32. 32
  33. 33
  34. 34
  35. 35
  36. 36
  37. 37
  38. 38
  39. 39
  40. 40
  41. 41
  42. 42
  43. 43
  44. 44
  45. 45
  46. 46
  47. 47
  48. 48
  49. 49
  50. 50
  51. 51
  52. 52
  53. 53
  54. 54
  55. 55
  56. 56
  57. 57
  58. 58
  59. 59
  60. 60
  61. 61
  62. 62
  63. 63
  64. 64
  65. 65
Sub Макрос2()
    Dim pos0, pos1, pos2, pos3, pos4, pos5, pos6, pos7, pos8, pos9, digitPos As Integer

    For Counter = 2 To 999999
        digitPos = 1000
    
        Set curCell = Worksheets("Лист1").Cells(Counter, 5)
        Set primCell = Worksheets("Лист1").Cells(Counter, 6)
    
        pos0 = InStr(1, primCell.Value, "0")
        pos1 = InStr(1, primCell.Value, "1")
        pos2 = InStr(1, primCell.Value, "2")
        pos3 = InStr(1, primCell.Value, "3")
        pos4 = InStr(1, primCell.Value, "4")
        pos5 = InStr(1, primCell.Value, "5")
        pos6 = InStr(1, primCell.Value, "6")
        pos7 = InStr(1, primCell.Value, "7")
        pos8 = InStr(1, primCell.Value, "8")
        pos9 = InStr(1, primCell.Value, "9")
        
        If pos0 > 0 And pos0 < digitPos Then
            digitPos = pos0
        End If
        
        If pos1 > 0 And pos1 < digitPos Then
            digitPos = pos1
        End If
        
        If pos2 > 0 And pos2 < digitPos Then
            digitPos = pos2
        End If
        
        If pos3 > 0 And pos3 < digitPos Then
            digitPos = pos3
        End If
        
        If pos4 > 0 And pos4 < digitPos Then
            digitPos = pos4
        End If
        
        If pos5 > 0 And pos5 < digitPos Then
            digitPos = pos5
        End If
        
        If pos6 > 0 And pos6 < digitPos Then
            digitPos = pos6
        End If
        
        If pos7 > 0 And pos7 < digitPos Then
            digitPos = pos7
        End If
        
        If pos8 > 0 And pos8 < digitPos Then
            digitPos = pos8
        End If
        
        If pos9 > 0 And pos9 < digitPos Then
            digitPos = pos9
        End If
        
        'MsgBox Left(primCell.Value, digitPos - 1)
        
        curCell.Value = Trim(Left(primCell.Value, digitPos - 1))
    Next Counter
End Sub

Я идиот и не умею программировать в excel!!
Мне надо было отрезать текст до первой цифры в одной ячейке и засунуть его в другую.
Наверное, надо было почитать про массивы в VB

Запостил: striker striker, (Updated )

Комментарии (9) RSS

  • судя по последним страницам, бОльшую часть говнокода составляют брутфорсы

    предлагаю кроме (b? true: false) сделать импичмент брутфорсам, потому що они один одинаковее другого
    Ответить
  • Кстати, отличным лекарством будет отключить копирование/вставку в редакторе. Человек либо набирать руками будет, либо будет придумывать что-то без копипейста.
    (Не могу, на работе копипейстеры задолбали!)
    Ответить
    • А за повторение в коде группы строк бросать крокодилам =3
      Ответить
      • Это для индийцев? Национальная специфика. У нас поди этих крокодилов еще сыщи...
        Ответить
  • Да простит меня достопочтенная публика, мне надо было просто один раз пробежаться по всему листу и забыть, так что быстрее было накопипастить, чем читать, как там работают циклы. В общем, мажусь 🙂
    Ответить

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8