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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 12.07.2011, 12:02   #21
Серёга0629
Форумчанин
 
Регистрация: 21.04.2011
Сообщений: 128
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
причина почему не работает - неправильно написан код.
причина почему Вам не могут помочь - никто не понимает что надо сделать.
повторюсь: не нужен а данном случае Ваш код, нужно словесное описание того, что должно происходить с данными при открытии книги.

Есть 3 файла, в каждом из них по 2 листа, в каждом из этих листов ищется максимум по диопазону A1:A300 и записывается в четвёртый файл(Проба) на Лист1., так же(вы мне вчера в этом помогали) есть оператор уловия который проверяет есть ли даные файла(эти 3 штуки) в данной папке, если есть выполняется действие, если их нет, то действие с участием этого файла он пропускает.
ВСЁ работает на (Лист1, Лист2 в модулях и т.д.)
Не работает только в разделе "Эта книга"


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

Данные при открытии книги должны автоматически вносится в указаные ячейки

Последний раз редактировалось Серёга0629; 12.07.2011 в 12:26.
Серёга0629 вне форума Ответить с цитированием
Старый 12.07.2011, 12:27   #22
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

файл проба и три исходных в одной папке находятся?
"записывается на лист1" - это куда? на листе много ячеек, куда записать данные?
с какого файла в какую ячеку листа1 файла проба должны попасть данные? или ячейки можно выбрать случайным образом и записать куда-нибудь?
вам не важно с какого файла где расположилось максимальное значение? на листе1 не надо предварительно данные очистить?
или если нет файла что, куда записать?

Вы не партизан на допросе в гестапо, хотите получить ответ - потрудитесь описать задачу.
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 12.07.2011, 12:39   #23
Серёга0629
Форумчанин
 
Регистрация: 21.04.2011
Сообщений: 128
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
файл проба и три исходных в одной папке находятся?
"записывается на лист1" - это куда? на листе много ячеек, куда записать данные?
с какого файла в какую ячеку листа1 файла проба должны попасть данные? или ячейки можно выбрать случайным образом и записать куда-нибудь?
вам не важно с какого файла где расположилось максимальное значение? на листе1 не надо предварительно данные очистить?
или если нет файла что, куда записать?

Вы не партизан на допросе в гестапо, хотите получить ответ - потрудитесь описать задачу.

Файлы находятся в одной папке(Вид 130 131 132 125 апрель - 1-й файл, Вид 130 131 132 125 март - 2-й, ffffffffffffffff - 3-й и Проба канечный файл),
""записывается на лист1" - это куда?" - из 3-х файлов, в котых в свою очередь идёт поиск максимума по 2-м листам каждого из них и всё это записывается Проба.xls Лист1 ячейки: A1,A2 от первого файла, B1,B2 C1,C2 - от 2-го и 3-го соответственно.
максимальное значение ищится во всех 3-х файла(в каждом из 2-х листов(B131,B132)) в диапазоне A1:A300
очищать не чего не надо
если файла нет, то действие с этим файлом не выполняется(ячейки на Лист1 остаются пустыми)
Серёга0629 вне форума Ответить с цитированием
Старый 12.07.2011, 13:45   #24
Серёга0629
Форумчанин
 
Регистрация: 21.04.2011
Сообщений: 128
По умолчанию

ещё вопросик всплыл, чтоб обойти проблему выше!
как в разделе "Эта книга" запустить макрос который находится в разделе Лист1 ???
искал пробовал не получается((((((

Private Sub Workbook_Open()
Call моя_процедура
End Sub

Sub моя_процедура()
ggg
End Sub

ggg - это мой макрос .

Последний раз редактировалось Серёга0629; 12.07.2011 в 13:49.
Серёга0629 вне форума Ответить с цитированием
Старый 12.07.2011, 14:34   #25
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
Private Sub Workbook_Open()
  Лист1.моя_процедура
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 12.07.2011, 14:46   #26
Серёга0629
Форумчанин
 
Регистрация: 21.04.2011
Сообщений: 128
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
Код:
Private Sub Workbook_Open()
  Лист1.моя_процедура
End Sub
ОООО!!!!!!! то что надо))) одно слово, блин! а я весь день мучаюсь)))

СПАСИБО )))))))))))))))))))))
Серёга0629 вне форума Ответить с цитированием
Старый 12.07.2011, 14:53   #27
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

и еще несколько слов...
пробуйте это
Код:
Sub GetMaxFrom()
  Dim pt As String, fn(3) As String, f As Long, sh(2) As String, s As Long
  fn(1) = "Вид 130 131 132 125 апрель.xls"
  fn(2) = "Вид 130 131 132 125 март.xls"
  fn(3) = "ffffffffffffffff.xls"
  sh(1) = "B131"
  sh(2) = "B132"
  pt = ThisWorkbook.Path
  On Error Resume Next
  For f = 1 To 3
    Workbooks.Open pt & Application.PathSeparator & fn(f)
    If Err.Number = 0 Then
      For s = 1 To 2
        ThisWorkbook.Sheets(1).Cells(f, s) = WorksheetFunction.Max(Sheets(sh(s)).Range("A1:A300"))
      Next
      Workbooks(Workbooks.Count).Close False
    Else
      Err.Clear
    End If
  Next
  On Error GoTo 0
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 12.07.2011, 15:07   #28
Серёга0629
Форумчанин
 
Регистрация: 21.04.2011
Сообщений: 128
По умолчанию

останавливается на марте, и документ "Вид.....март" остаётся открытым
и в файле Проба не чего не записывается
Серёга0629 вне форума Ответить с цитированием
Старый 12.07.2011, 15:44   #29
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

а так:
Код:
Sub GetMaxFrom()
  Dim pt As String, fn(3) As String, f As Long, sh(2) As String, s As Long
  fn(1) = "Вид 130 131 132 125 апрель.xls"
  fn(2) = "Вид 130 131 132 125 март.xls"
  fn(3) = "ffffffffffffffff.xls"
  sh(1) = "В131"
  sh(2) = "В132"
  pt = ThisWorkbook.Path
  On Error Resume Next
  For f = 1 To 3
    Workbooks.Open pt & Application.PathSeparator & fn(f)
    If Err.Number = 0 Then
      For s = 1 To 2
        ThisWorkbook.Sheets(1).Cells(s, f) = _
        WorksheetFunction.Max(Workbooks(Workbooks.Count).Sheets(sh(s)).Range("A1:A300"))
      Next
      Workbooks(Workbooks.Count).Close False
    Else
      Err.Clear
    End If
  Next
  On Error GoTo 0
End Sub
я не знаю как там листы называются с латинской В (би) или с кириллической В (вэ)
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете

Последний раз редактировалось IgorGO; 12.07.2011 в 15:52.
IgorGO вне форума Ответить с цитированием
Старый 12.07.2011, 15:52   #30
Серёга0629
Форумчанин
 
Регистрация: 21.04.2011
Сообщений: 128
По умолчанию

так работает)) но возник вопрос: где в коде прописывать имена ячеек в которые будут записываться результаты, это же у меня черновик, в читовике надо будт ссылатся на конкретные ячейки
Серёга0629 вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как избежать подвисания Juffin Общие вопросы Delphi 12 18.05.2011 23:41
Как избежать повтор строк в тексте Federal Помощь студентам 3 19.10.2010 14:38
Как избежать Selection? Мультипликатор Microsoft Office Word 10 21.06.2010 17:15
Бот - как избежать слежки? boris-blade Win Api 9 28.12.2009 09:11
как избежать кэширования в Опере rolling PHP 3 01.12.2009 18:34