Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 28.02.2012, 13:40   #11
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Можно почти всё...
Но вот смотрите - Вы даёте задание записать в строках 3, 6, 9.
Но если увеличилось количество строк (Каких? Где? Всего их всегда одно постоянное количество) тогда сдвигать столбец - куда? На сколько? С какого места?

Хотя может быть это нужно: http://www.programmersforum.ru/showthread.php?t=189361
При открытии файла даём ячейкам имена - и потом пишем по именам.
Но зачем это всё?
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 28.02.2012, 13:45   #12
Artem_85
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 82
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Можно почти всё...
Но вот смотрите - Вы даёте задание записать в строках 3, 6, 9.
Но если увеличилось количество строк (Каких? Где? Всего их всегда одно постоянное количество) тогда сдвигать столбец - куда? На сколько? С какого места?

Хотя может быть это нужно: http://www.programmersforum.ru/showthread.php?t=189361
При открытии файла даём ячейкам имена - и потом пишем по именам.
Но зачем это всё?
Я понял что это надо знать VBA в идеале что бы написать такой макрос. Не будузаморачиваться буду подсчитывать вручную. просто хотел все автоматизировать. Отчет кривой в 1CСпасибо что объяснил все)
Artem_85 вне форума Ответить с цитированием
Старый 28.02.2012, 13:50   #13
Artem_85
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 82
По умолчанию

а как отделить текст от чисел?мне вообще из названия торговой точки надо отделить текст от чисел)
Artem_85 вне форума Ответить с цитированием
Старый 28.02.2012, 14:20   #14
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Не сложно - но нужен пример десятка таких ячеек, которые хотите делить, с результатом.
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 28.02.2012, 14:37   #15
Artem_85
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 82
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Не сложно - но нужен пример десятка таких ячеек, которые хотите делить, с результатом.
Книга1.rar
применил вот такой макрос

[/QUOTE]
Public Function ExtractNumber(S As String)
Dim i As Integer, str As String
For i = 1 To Len(S)
If InStr(1, "1234567890,", Mid(S, i, 1)) <> 0 Then str = str & Mid(S, i, 1)
Next
ExtractNumber = str
End Function
[/QUOTE]

в примере видно что получилось. Как сделать что бы выводились числа только рядом с зо знаком +
Artem_85 вне форума Ответить с цитированием
Старый 28.02.2012, 15:15   #16
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Я не силён в RegExp, но вроде так работает (критикуйте ):
Код:
Function numb(S As String)
    Dim v
    With CreateObject("vbscript.regexp")
        .Pattern = "[+]\d+"
        Set v = .Execute(S)
        If v.Count = 0 Then numb = "": Exit Function
    End With
    numb = CDbl(Right(v(0).Value, Len(v(0).Value) - 1))
End Function
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 28.02.2012, 15:28   #17
Artem_85
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 82
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Я не силён в RegExp, но вроде так работает (критикуйте ):
Код:
Function numb(S As String)
    Dim v
    With CreateObject("vbscript.regexp")
        .Pattern = "[+]\d+"
        Set v = .Execute(S)
        If v.Count = 0 Then numb = "": Exit Function
    End With
    numb = CDbl(Right(v(0).Value, Len(v(0).Value) - 1))
End Function
а у меня почему то не работает)
Artem_85 вне форума Ответить с цитированием
Старый 28.02.2012, 15:36   #18
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Не знаю - добавил в Ваш файл модуль, туда этот код, в ячейку 51-ой строки формулу типа =numb(A51) - работает...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 28.02.2012, 17:25   #19
Artem_85
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 82
По умолчанию

Цитата:
Сообщение от Hugo121 Посмотреть сообщение
Не знаю - добавил в Ваш файл модуль, туда этот код, в ячейку 51-ой строки формулу типа =numb(A51) - работает...
почемуже не работает у меня?((
Artem_85 вне форума Ответить с цитированием
Старый 28.02.2012, 17:31   #20
Artem_85
Пользователь
 
Регистрация: 21.02.2012
Сообщений: 82
По умолчанию

Цитата:
Сообщение от Artem_85 Посмотреть сообщение
почемуже не работает у меня?((
в столбец В все равно переносятся все числа из А а надо что бы только которые рядом со знаком +
Artem_85 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Макрос постоянно обрабатывает события. При открытии другой книги макрос обрывается. Ples Microsoft Office Excel 8 17.12.2016 18:15
Макрос? Vm1 Microsoft Office Excel 5 01.02.2011 17:43
Exel - при открытии файла через макрос, если файл отсутствует - виснет весь макрос gregory1b Microsoft Office Excel 2 14.10.2010 11:51
Макрос, запускающий макрос из другого закрытого файла petruha Microsoft Office Excel 7 14.03.2010 11:31
Макрос вставки файлов в листы-Необходимо изменить ниже приведённый макрос as-is Microsoft Office Excel 4 25.02.2010 07:51