NokitaKaze icon

Код Никиты десятилетней выдержки

NokitaKaze | PRO | 09/05/14 02:16:30 PM UTC | 0 ⭐ | 480 👁️ | Never ⏰ | []
VisualBasic |

14.38 KB

|

None

|

0 👍

/

0 👎

Attribute VB_Name = "Module7"
'Private Static Function Str(i As Integer) As String
Function UpStr(c As String) As String
Dim c1, c2 As String
c1 = "йцукенгшщзхъфывапролджэячсмитьбю"
c2 = "ЙЦУКЕНГШЩЗХЪФЫВАПРОЛДЖЭЯЧСМИТЬБЮ"
If InStr(c1, c) <> 0 Then
 UpStr = Right(Left(c2, InStr(c1, c)), 1)
Else
 UpStr = c
End If
End Function
 
 
' (cl) CopyLeft by <ВЫРЕЗАНО БЛЕАТЬ>
Sub ЗаполнениеВсего()
Attribute ЗаполнениеВсего.VB_Description = "Макрос записан 26.03.2004 <ВЫРЕЗАНО БЛЕАТЬ>"
Attribute ЗаполнениеВсего.VB_ProcData.VB_Invoke_Func = " \n14"
Dim i As Integer
Dim s As String
Dim MsgText As String
Dim NumOne As Integer
 
MsgText = "Ошибки: "
NumOne = InputBox("Введите номер первого листа", "Введите данные")
If NumOne = nul Then Exit Sub
For i = NumOne To NumOne + (2548 - 2487)
    Select Case i
     Case NumOne - 2487 + 2494: GoTo NextI
     Case NumOne - 2487 + 2500: GoTo NextI
     Case NumOne - 2487 + 2507: GoTo NextI
     Case NumOne - 2487 + 2515: GoTo NextI
     'Case NumOne - 2363 + 2425: GoTo NextI
     'Case NumOne - 2363 + 1914: GoTo NextI
    End Select
    s$ = ""
    
    Sheets("Лист" + Str(i)).Select
    
    Range("J33").Select
    If InStr(ActiveCell.Formula, "уплач") <> 0 Then GoTo Uplacheno
    
    Range("F32").Select
    If ActiveCell.Formula <> "=C32+D32-E32" Then
     If (re <> vbNo) Then re = MsgBox("Между прочим на странице" + _
     Str(i) + " в ячейке F32. Повторять эту чушь?", vbCritical + _
     vbYesNo, "Проблема с формулой")
     MsgText = MsgText + Str(i) + "(F32)"
    End If
    Range("K32").Select
    If ActiveCell.Formula <> "=J32+F32" Then
     If (re <> vbNo) Then re = MsgBox("Между прочим на странице" + _
     Str(i) + " в ячейке K32. Повторять эту чушь?", vbCritical + _
     vbYesNo, "Проблема с формулой")
     MsgText = MsgText + Str(i) + "(K32)"
    End If
    Range("J32").Select
    If ActiveCell.Formula <> "=SUM(J15:J31)" Then
     If (re <> vbNo) Then re = MsgBox("Между прочим на странице" + _
     Str(i) + " в ячейке J32. Повторять эту чушь?", vbCritical + _
     vbYesNo, "Проблема с формулой ->" + ActiveCell.Formula)
     MsgText = MsgText + Str(i) + "(J32)"
    End If
    
    
    'If i = 729 Then
    '   Range("J33").Select
    'End If
    
    Range("d32").Select
    n = Val(ActiveCell.FormulaR1C1)
    Range("c32").Select
    n = n + Val(ActiveCell.FormulaR1C1)
    Range("e32").Select
    n = n - Val(ActiveCell.FormulaR1C1)
    
    For j = 15 To 31
     Range("j" + LTrim(Str(j))).Select
     n = n + Val(ActiveCell.FormulaR1C1)
    Next j
    
    suka = (n * 100) Mod 100
    
    z = Int(n * 10000) Mod 100
    If Int(z) = 99 Then
       n = (Int(n * 100) + 1) / 100
    End If
    
    Select Case Int(n / 1000)
     Case 1
       s$ = "Одна тысяча"
     Case 2
       s$ = "Две тысячи"
     Case 3
       s$ = "Три тысячи"
     Case 4
       s$ = "Четыри тысячи"
     Case 5
       s$ = "Пять тысяч"
     Case 6
       s$ = "Шесть тысяч"
     Case 7
       s$ = "Семь тысяч"
     Case 8
       s$ = "Восемь тысяч"
     Case 9
       s$ = "Десять тысяч"
     Case 10
       s$ = "Десять тысяч"
     Case 11
       s$ = "Одинадцать тысяч"
     Case 12
       s$ = "Двенадцать тысяч"
     Case 13
       s$ = "Тринадцать тысяч"
     Case 14
       s$ = "Четырнадцать тысяч"
     Case 15
       s$ = "Пятнадцать тысяч"
     Case 16
       s$ = "Шестнадцать тысяч"
     Case 17
       s$ = "Семьнадцать тысяч"
     Case 18
       s$ = "Восемьнадцать тысяч"
     Case 19
       s$ = "Девятнадцать тысяч"
     Case 20
       s$ = "Двадцать тысяч"
     Case 22
       s$ = "Двадцать две тысячи"
     Case 23
       s$ = "Двадцать три тысячи"
     Case 24
       s$ = "Двадцать четыре тысячи"
     Case 25
       s$ = "Двадцать пять тысяч"
     Case 26
       s$ = "Двадцать шесть тысяч"
     Case 27
       s$ = "Двадцать семь тысяч"
     Case 28
       s$ = "Двадцать восемь тысяч"
     Case 29
       s$ = "Двадцать девять тысяч"
     Case 30
       s$ = "Тридцать тысяч"
     Case 31
       s$ = "Тридцать одна тысяча"
     Case 32
       s$ = "Тридцать две тысячи"
     Case 33
       s$ = "Тридцать три тысячи"
     Case 34
       s$ = "Тридцать четыре тысячи"
     Case 35
       s$ = "Тридцать пять тысяч"
     Case 36
       s$ = "Тридцать шесть тысяч"
     Case 37
       s$ = "Тридцать семь тысяч"
     Case 38
       s$ = "Тридцать восемь тысяч"
     Case 39
       s$ = "Тридцать девять тысяч"
     Case 40
       s$ = "Сорок тысяч"
     Case 41
       s$ = "Сорок одна тысяча"
     Case 42
       s$ = "Сорок две тысячи"
     Case 43
       s$ = "Сорок три тысячи"
     Case 44
       s$ = "Сорок четыре тысячи"
     Case 45
       s$ = "Сорок пять тысяч"
     Case 46
       s$ = "Сорок шесть тысяч"
     Case 47
       s$ = "Сорок семь тысяч"
     Case 48
       s$ = "Сорок восемь тысяч"
     Case 49
       s$ = "Сорок девять тысяч"
     Case 50
       s$ = "Пятьдесят тысяч"
     Case 51
       s$ = "Пятьдесят одна тысяча"
     Case 52
       s$ = "Пятьдесят две тысячи"
     Case 53
       s$ = "Пятьдесят три тысячи"
     Case 54
       s$ = "Пятьдесят четыре тысячи"
     Case 55
       s$ = "Пятьдесят пять тысяч"
     Case 56
       s$ = "Пятьдесят шесть тысяч"
     Case 57
       s$ = "Пятьдесят семь тысяч"
     Case 58
       s$ = "Пятьдесят восемь тысяч"
     Case 59
       s$ = "Пятьдесят девять тысяч"
     Case 60
       s$ = "Шестьдесят тысяч"
     Case 61
       s$ = "Шестьдесят одна тысяч"
     Case 62
       s$ = "Шестьдесят две тысячи"
     Case 63
       s$ = "Шестьдесят три тысячи"
     Case 64
       s$ = "Шестьдесят четыре тысячи"
     Case 65
       s$ = "Шестьдесят пять тысяч"
     Case 66
       s$ = "Шестьдесят шесть тысяч"
     Case 67
       s$ = "Шестьдесят семь тысяч"
     Case 68
       s$ = "Шестьдесят восемь тысяч"
     Case 69
       s$ = "Шестьдесят девять тысяч"
     Case 70
       s$ = "Семьдесят тысяч"
     Case 0
       s$ = s$
     Case Else
       s$ = InputBox("Всё, сам вводи!" + Str(n), "ВВЕДИ В МЕНЯ... число :)")
       GoTo vse
       
      
    End Select
    s$ = s$ + " "
    Select Case Int(n / 100) Mod 10
      Case 1
        s$ = s$ + "сто"
      Case 2
        s$ = s$ + "двести"
      Case 3
        s$ = s$ + "триста"
      Case 4
        s$ = s$ + "четыреста"
      Case 5
        s$ = s$ + "пятьсот"
      Case 6
        s$ = s$ + "шестьсот"
      Case 7
        s$ = s$ + "семьсот"
      Case 8
        s$ = s$ + "восемьсот"
      Case 9
        s$ = s$ + "девятьсот"
    End Select
    
    s$ = s$ + " "
    Select Case Int(n / 10) Mod 10
       Case 1
         j = (Int(n) Mod 10)
         Select Case j
          Case 0
            s$ = s$ + "десять"
          Case 1
            s$ = s$ + "одинадцать"
          Case 2
            s$ = s$ + "двенадцать"
          Case 3
            s$ = s$ + "тринадцать"
          Case 4
            s$ = s$ + "четырнадцать"
          Case 5
            s$ = s$ + "пятнадцать"
          
          
          Case 6
            s$ = s$ + "шестьнадцать"
          Case 7
            s$ = s$ + "семьнадцать"
          Case 8
            s$ = s$ + "восемьнадцать"
          Case 9
            s$ = s$ + "девятьнадцать"
         End Select
         s$ = s$ + " "
         GoTo opeyka
       Case 2
         s$ = s$ + "двадцать"
       Case 3
         s$ = s$ + "тридцать"
       Case 4
         s$ = s$ + "сорок"
       Case 5
         s$ = s$ + "пятьдесят"
       Case 6
         s$ = s$ + "шестьдесят"
       Case 7
         s$ = s$ + "семьдесят"
       Case 8
         s$ = s$ + "восемьдесят"
       Case 9
         s$ = s$ + "девяносто"
    End Select
    s$ = s$ + " "
    
    
    'pizda = Right(ActiveCell.FormulaR1C1, 4)
    
    pizda = Right(n, 4)
    If InStr(pizda, ".") <> 2 Then
       pizda = Right(Left(pizda, 2), 1)
    Else
       pizda = Left(pizda, 1)
    End If
        
    Select Case Int(n) Mod 10 'pizda '(n Mod 10)
       Case "1"
         s$ = s$ + "один"
       Case "2"
         s$ = s$ + "два"
       Case "3"
         s$ = s$ + "три"
       Case "4"
         s$ = s$ + "четыре"
       Case "5"
         s$ = s$ + "пять"
       Case "6"
         s$ = s$ + "шесть"
       Case "7"
         s$ = s$ + "семь"
       Case "8"
         s$ = s$ + "восемь"
       Case "9"
         s$ = s$ + "девять"
    End Select
       s$ = s$ + " "
    
opeyka:
    s$ = LTrim(s$)
    s$ = UpStr(Left(s$, 1)) + Right(s$, Len(s$) - 1)
    
    z = Int(n) Mod 100
    Select Case z \ 10
    Case 0, 2, 3, 4, 5, 6, 7, 8, 9
     Select Case z Mod 10
     Case 0, 5, 6, 7, 8, 9
      s$ = s$ + " рублей"
     Case 1
      s$ = s$ + " рубль"
     Case 2, 3, 4
      s$ = s$ + " рубля"
     End Select
    Case 1
     s$ = s$ + " рублей"
    End Select
 
 
    s$ = s$ + Str(suka) '+ " коп."
    
    Select Case suka \ 10
    Case 0, 2, 3, 4, 5, 6, 7, 8, 9
     Select Case suka Mod 10
     Case 0, 5, 6, 7, 8, 9
      s$ = s$ + " копеек"
     Case 1
      s$ = s$ + " копейка"
     Case 2, 3, 4
      s$ = s$ + " копейки"
     End Select
    Case 1
     s$ = s$ + " копеек"
    End Select
    
    
    
    'Int((n - Int(n)) * 100)
    
    
    
    
vse:
    
    Range("A34").Select
    ActiveCell.FormulaR1C1 = "Всего к оплате по счету-фактуре №  _" + LTrim(Str(i)) + "Г_" + s$
    
    Range("F42").Select
    ActiveCell.FormulaR1C1 = "Главный бухгалтер __________________________ /<ВЫРЕЗАНО БЛЕАТЬ> Л.Р./"
    
    Range("B34:E34").Select
    Selection.ClearContents
    GoTo NextI
 
Uplacheno:
    Range("A34").Select
    ActiveCell.FormulaR1C1 = "Всего к оплате по счету-фактуре №  _" + LTrim(Str(i)) + "Г_уплачено!"
 
NextI:
Next i
 
 
 
If MsgText <> "Ошибки: " Then MsgBox MsgText, vbCritical, "Ошибки"
MsgBox "Дождался!" + Chr(13) + "          (cl) CopyLeft by <ВЫРЕЗАНО БЛЕАТЬ>", vbInformation, "Это я - любимый!"
 
End Sub
 
Sub SecMe()
NumOne = InputBox("Введите номер первого листа", "Введите данные")
If NumOne = "" Then Exit Sub
For i = NumOne To NumOne + 59
    Select Case i
     Case NumOne + 1684 - 1677: GoTo NextI
     Case NumOne + 1698 - 1677: GoTo NextI
     'Case NumOne + 407 - 1677: GoTo NextI
     'Case NumOne + 407 - 1677: GoTo NextI
     'Case NumOne + 407 - 1677: GoTo NextI
     'Case NumOne + 407 - 1677: GoTo NextI
     'Case NumOne + 407 - 1677: GoTo NextI
    End Select
    Sheets("Лист" + Str(i)).Select
    Range("i15").Select
    ActiveCell.FormulaR1C1 = "0.75"
    Range("i16").Select
    ActiveCell.FormulaR1C1 = "6.95"
    Range("i17").Select
    ActiveCell.FormulaR1C1 = "305.8"
    Range("i18").Select
    ActiveCell.FormulaR1C1 = "4.66"
    Range("i19").Select
    ActiveCell.FormulaR1C1 = "305.8"
    Range("i20").Select
    ActiveCell.FormulaR1C1 = "0.89"
    Range("i21").Select
    ActiveCell.FormulaR1C1 = "0.89"
    
    Range("i23").Select
    ActiveCell.FormulaR1C1 = "0.96"
    Range("i24").Select
    ActiveCell.FormulaR1C1 = "1.36"
    Range("i25").Select
    ActiveCell.FormulaR1C1 = "29.53"
    Range("i26").Select
    ActiveCell.FormulaR1C1 = "0.97"
    Range("i27").Select
    ActiveCell.FormulaR1C1 = "1.90"
    Range("i28").Select
    ActiveCell.FormulaR1C1 = "0.13"
    Range("i29").Select
    ActiveCell.FormulaR1C1 = "1.72"
    Range("i31").Select
    ActiveCell.FormulaR1C1 = "0.63"
 
NextI:
Next i
End Sub
 
Sub summing()
Dim s As String
Const NumOne = 1859
 
s = "СУММ("
s1 = s
For i = NumOne To NumOne + 30
    Select Case i
     Case NumOne - 1859 + 1866: GoTo NextI
     Case NumOne - 1859 + 1874: GoTo NextI
     Case NumOne - 1859 + 1881: GoTo NextI
     Case NumOne - 1859 + 1882: GoTo NextI
    End Select
s = s + "'Лист" + Str(i) + "'!J32;"
s1 = s1 + "'Лист" + Str(i) + "'!K32;"
 
NextI:
Next
s = s + "0)"
s1 = s1 + "0)"
Sheets("Сумма").Select
Range("J32").Select
ActiveCell.FormulaR1C1 = s
Range("K32").Select
ActiveCell.FormulaR1C1 = s1
 
 
s = "СУММ("
s1 = s
For i = NumOne + 31 To NumOne + 61
    Select Case i
     Case NumOne - 1859 + 1890: GoTo NextI1
     Case NumOne - 1859 + 1914: GoTo NextI1
    End Select
s = s + "'Лист" + Str(i) + "'!J32;"
s1 = s1 + "'Лист" + Str(i) + "'!K32;"
 
NextI1:
Next
 
s = s + "0)"
s1 = s1 + "0)"
Sheets("Сумма").Select
Range("J33").Select
ActiveCell.FormulaR1C1 = s
Range("K33").Select
ActiveCell.FormulaR1C1 = s1
 
End Sub

Comments