65

Excel. Уволят - не уволят?

Не так давно устроился на новую работу и кто-то рассказал начальству, что я офигенски владею программами word, excel и тд. На все мои жалкие попытки блеянья, что я в них немного разбираюсь, но далеко не профи, начальник дал указание до завтрашнего дня разобраться как в excelе сумму сделать прописью, иначе уволят.

Суть моего поста: ребят,помогите пожалуйста. в гугле не забанен, адекватный совет от туда был создать макрос, но что то не получилось и он постоянно выдает ошибку. может кто подскажет как лучше сделать или как исправить ошибку.

братья по свежему, не топите сильно, очень надеюсь на адекватную помощь знающих людей.

1
Автор поста оценил этот комментарий
Иллюстрация к комментарию
1
Автор поста оценил этот комментарий

Да не меня надо благодарить, а человека, который это когда то сделал=) Но его уже не найти...

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

но ведь именно вы подсказали этот макрос с которым все работает

хотя бы плюсиками отблагодарю

показать ответы
1
Автор поста оценил этот комментарий

Убери пустые строки после знака "_", так как это перенос строки. Плюс убери большие пробелы. Должно все заработать.

m = m & sot(CInt(Mid(rub, i, 1))) & IIf(Mid(rub, i + 1, 1) = "1", nadc(CInt(Mid(rub, i + 2, 1))), _

des(CInt(Mid(rub, i + 1, 1))) & ed(CInt(Mid(rub, i + 2, 1)) + IIf(i = Len(rub) - 5 And CInt(Mid(rub, i + 2, 1)) < 3, 10, 0))) & _

IIf(Mid(rub, i + 1, 1) = "1" Or (Mid(rub, i + 2, 1) + 9) Mod 10 >= 4, razr(i + 1), IIf(Mid(rub, i + 2, 1) = "1", razr(i - 1), razr(i)))


Как то так должно выглядеть.

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

мать честная, получилось.

спасибо вам огромное, прям безумно и безгранично благодарен.

счастья вам, богатства, жену хорошую и любящую, всех благ вам.

я в шоке, как я могу вас отблагодарить?

показать ответы
1
Автор поста оценил этот комментарий

Использую данный макрос, все вроде работает. Когда-то где-то нашел его. Прописываешь в ячейку "=MSumPro(ячейка с числом)".

Function MSumProp$(chislo#)

Dim rub$, kop$, ed, des, sot, nadc, razr, i&, m$

   If chislo >= 1E+15 Or chislo < 0 Then Exit Function

sot = Array("", "сто ", "двести ", "триста ", "четыреста ", "пятьсот ", "шестьсот ", "семьсот ", "восемьсот ", "девятьсот ")


des = Array("", "", "двадцать ", "тридцать ", "сорок ", "пятьдесят ", "шестьдесят ", "семьдесят ", "восемьдесят ", "девяносто ")


nadc = Array("десять ", "одиннадцать ", "двенадцать ", "тринадцать ", "четырнадцать ", "пятнадцать ", "шестнадцать ", "семнадцать ", "восемнадцать ", "девятнадцать ")


ed = Array("", "один ", "два ", "три ", "четыре ", "пять ", "шесть ", "семь ", "восемь ", "девять ", "", "одна ", "две ")


razr = Array("триллион ", "триллиона ", "триллионов ", "миллиард ", "миллиарда ", "миллиардов ", "миллион ", "миллиона ", "миллионов ", "тысяча ", "тысячи ", "тысяч ", "рубль ", "рубля ", "рублей ")

rub = Left(Format(chislo, "000000000000000.00"), 15)

kop = Right(Format(chislo, "0.00"), 2)

  If CDbl(rub) = 0 Then m = "ноль "

  For i = 1 To Len(rub) Step 3

    If Mid(rub, i, 3) <> "000" Or i = Len(rub) - 2 Then

    m = m & sot(CInt(Mid(rub, i, 1))) & IIf(Mid(rub, i + 1, 1) = "1", nadc(CInt(Mid(rub, i + 2,     1))), _


   des(CInt(Mid(rub, i + 1, 1))) & ed(CInt(Mid(rub, i + 2, 1)) + IIf(i = Len(rub) - 5 And       CInt(Mid(rub, i + 2, 1)) < 3, 10, 0))) & _


IIf(Mid(rub, i + 1, 1) = "1" Or (Mid(rub, i + 2, 1) + 9) Mod 10 >= 4, razr(i + 1), IIf(Mid(rub, i + 2, 1) = "1", razr(i - 1), razr(i)))


End If


Next i


MSumProp = UCase(Left(m, 1)) & Mid(m, 2) & kop & " копе" & IIf(kop \ 10 = 1 Or ((kop + 9) Mod 10) >= 4, "ек", IIf(kop Mod 10 = 1, "йка", "йки"))


End Function

раскрыть ветку (1)
0
Автор поста оценил этот комментарий
Иллюстрация к комментарию
Иллюстрация к комментарию
показать ответы
0
Автор поста оценил этот комментарий
Попробуй урезать функцию, убери все что ниже "конец функции"
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

по-моему, у меня просто руки не из плеч растут, да и мозги отсутствуют. и макрос использовал, и урезал его, и через надстройки пробовал, и через огромную формулу пироманта пробовал - нихерашечки не помогает.

0
Автор поста оценил этот комментарий
Автор ты разрешил ехелю использование макросов, и документ с поддержкой макросов
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

да, конечно

показать ответы
2
Автор поста оценил этот комментарий
Надо говорить: "этого я не знаю, но посижу на форумах и разберусь".. ну или по факту: "этого я не знал, но посидел на форумах и разобрался".. тогда и отношение к тебе будет другое
раскрыть ветку (1)
0
Автор поста оценил этот комментарий

вот я и пытаюсь хоть как то разобраться, перечитал кучу форумов и множество сайтов, толку мало. последняя надежда на пикабу

0
Автор поста оценил этот комментарий

http://www.planetaexcel.ru/techniques/7/46/

еще как вариант

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

собственно от туда и брал макрос

показать ответы
1
Автор поста оценил этот комментарий

http://excelru.ru/excel/chislo-propisyu-v-excel.html  как-то так попробуй

раскрыть ветку (1)
0
Автор поста оценил этот комментарий

это для него нормально?

Иллюстрация к комментарию
3
Автор поста оценил этот комментарий

Ждем ответа от Лиги Ясновидящих, которые найдет ошибку в макросе, не смотря на него.

раскрыть ветку (1)
Автор поста оценил этот комментарий

я ж говорю баран. затупил

1
DELETED
Автор поста оценил этот комментарий
Телепаты в отпуске.
раскрыть ветку (1)
Автор поста оценил этот комментарий

не понял? я что то пропустил в тексте?