Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Открыть файл excel. (VBA) - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Открыть файл excel. (VBA) (Задача вроде простая, но...)
Открыть файл excel. (VBA)
Michael_S Дата: Пятница, 15.03.2013, 11:18 | Сообщение № 1
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Все, что об этом файле известно - он находится в той же папке, где и основной, и других файлов в этой папке нет. И что он - эксель. Ни имя и расширение файла, а также имя и расположение папки не известны.
Возможно? Если возможно - как?
 
Ответить
СообщениеВсе, что об этом файле известно - он находится в той же папке, где и основной, и других файлов в этой папке нет. И что он - эксель. Ни имя и расширение файла, а также имя и расположение папки не известны.
Возможно? Если возможно - как?

Автор - Michael_S
Дата добавления - 15.03.2013 в 11:18
nerv Дата: Пятница, 15.03.2013, 11:29 | Сообщение № 2
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

Получить список файлов папки


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba
 
Ответить
СообщениеПолучить список файлов папки

Автор - nerv
Дата добавления - 15.03.2013 в 11:29
Vitalts Дата: Пятница, 15.03.2013, 11:47 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация: 6 ±
Замечаний: 0% ±

Все названия Excel файлов в папке активной книги, исключая ее:
[vba]
Код

Dim fn As String

With ActiveWorkbook
   fn = Dir(.Path & "\*.xls*")
   Do Until fn = ""
     If fn <> .Name Then: _
       Debug.Print fn
     fn = Dir
   Loop
End With
[/vba]
Ну и собственно, открытие книги по названию файла и папки активной:
[vba]
Код
Set wb = Workbooks.Open(ActiveWorkbook.Path & "\" & fn)
[/vba]

--
PS: что-то код при каждом релоаде по разному кажет, пофиксил форматирование


Сообщение отредактировал Vitalts - Пятница, 15.03.2013, 12:12
 
Ответить
СообщениеВсе названия Excel файлов в папке активной книги, исключая ее:
[vba]
Код

Dim fn As String

With ActiveWorkbook
   fn = Dir(.Path & "\*.xls*")
   Do Until fn = ""
     If fn <> .Name Then: _
       Debug.Print fn
     fn = Dir
   Loop
End With
[/vba]
Ну и собственно, открытие книги по названию файла и папки активной:
[vba]
Код
Set wb = Workbooks.Open(ActiveWorkbook.Path & "\" & fn)
[/vba]

--
PS: что-то код при каждом релоаде по разному кажет, пофиксил форматирование

Автор - Vitalts
Дата добавления - 15.03.2013 в 11:47
nerv Дата: Пятница, 15.03.2013, 11:58 | Сообщение № 4
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

Цитата (Vitalts)
If fn <> .Name Then: _
Debug.Print fn
fn = Dir

Зачем же такие извороты? не проще воспользоватся многострочным If?

мой велосипед. Особо не тестировал, но должен работать )

[vba]
Код
Sub Example()
      Set Folder = GetFileList("d:\Contacts\")
End Sub

' ----------------------------------------
' Returns collection files of folder
'
' @param {String} Path The path to folder
' @param {String} [Filter] The file filter
' @return {Collection} FileList
' ----------------------------------------
Private Function GetFileList(ByVal Path As String, _
                     Optional ByVal Filter As String = "*") As Collection
      Static List As New Collection
      Static FSO As Object
      Static Deep As Integer
      Dim SubFolder As Object
      Dim Folder As Object
      Dim File As Object
        
      If FSO Is Nothing Then
          Set FSO = CreateObject("Scripting.FileSystemObject")
      End If
        
      If FSO.FolderExists(Path) Then
          Set Folder = FSO.GetFolder(Path)
            
          For Each File In Folder.Files
              If File.Name Like Filter Then
                  List.Add File
              End If
          Next
            
          For Each SubFolder In Folder.SubFolders
              Deep = Deep + 1
              GetFileList SubFolder.Path, Mask
          Next
            
          Deep = Deep - 1
      End If
        
      If Deep = -1 Then
          Set GetFileList = List
          Set List = Nothing
          Set FSO = Nothing
          Deep = 0
      End If
End Function
[/vba]
впрочем, уже вижу косяк smile но не критичный )


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba


Сообщение отредактировал nerv - Пятница, 15.03.2013, 12:05
 
Ответить
Сообщение
Цитата (Vitalts)
If fn <> .Name Then: _
Debug.Print fn
fn = Dir

Зачем же такие извороты? не проще воспользоватся многострочным If?

мой велосипед. Особо не тестировал, но должен работать )

[vba]
Код
Sub Example()
      Set Folder = GetFileList("d:\Contacts\")
End Sub

' ----------------------------------------
' Returns collection files of folder
'
' @param {String} Path The path to folder
' @param {String} [Filter] The file filter
' @return {Collection} FileList
' ----------------------------------------
Private Function GetFileList(ByVal Path As String, _
                     Optional ByVal Filter As String = "*") As Collection
      Static List As New Collection
      Static FSO As Object
      Static Deep As Integer
      Dim SubFolder As Object
      Dim Folder As Object
      Dim File As Object
        
      If FSO Is Nothing Then
          Set FSO = CreateObject("Scripting.FileSystemObject")
      End If
        
      If FSO.FolderExists(Path) Then
          Set Folder = FSO.GetFolder(Path)
            
          For Each File In Folder.Files
              If File.Name Like Filter Then
                  List.Add File
              End If
          Next
            
          For Each SubFolder In Folder.SubFolders
              Deep = Deep + 1
              GetFileList SubFolder.Path, Mask
          Next
            
          Deep = Deep - 1
      End If
        
      If Deep = -1 Then
          Set GetFileList = List
          Set List = Nothing
          Set FSO = Nothing
          Deep = 0
      End If
End Function
[/vba]
впрочем, уже вижу косяк smile но не критичный )

Автор - nerv
Дата добавления - 15.03.2013 в 11:58
Vitalts Дата: Пятница, 15.03.2013, 12:10 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация: 6 ±
Замечаний: 0% ±

nerv, эээ, и вы утверждаете что у меня извороты? smile Чем вам Dir не угодил?
Похоже, изначально не правильно понял вас. В данном случае, мне караз таки было удобнее воспользоваться однострочным if, дабы не закрывать, а перенос для наглядности.
Кстати, проверки названий файлов на самого себя у вас нет.


Сообщение отредактировал Vitalts - Пятница, 15.03.2013, 12:17
 
Ответить
Сообщениеnerv, эээ, и вы утверждаете что у меня извороты? smile Чем вам Dir не угодил?
Похоже, изначально не правильно понял вас. В данном случае, мне караз таки было удобнее воспользоваться однострочным if, дабы не закрывать, а перенос для наглядности.
Кстати, проверки названий файлов на самого себя у вас нет.

Автор - Vitalts
Дата добавления - 15.03.2013 в 12:10
Michael_S Дата: Пятница, 15.03.2013, 12:46 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Vitalts, в вашем варианте не хочет открывать файл (error)
nerv, Саш, в вашем варианте жалуется на Mask и что он должен делать мне не понятно. У меня задача - открыть файл.
За помощь спасибо.

зы. кстати, везде, где возможно, я тоже предпочитаю однострочный If.
К сообщению приложен файл: 7223870.jpg (67.3 Kb)


Сообщение отредактировал Michael_S - Пятница, 15.03.2013, 12:50
 
Ответить
СообщениеVitalts, в вашем варианте не хочет открывать файл (error)
nerv, Саш, в вашем варианте жалуется на Mask и что он должен делать мне не понятно. У меня задача - открыть файл.
За помощь спасибо.

зы. кстати, везде, где возможно, я тоже предпочитаю однострочный If.

Автор - Michael_S
Дата добавления - 15.03.2013 в 12:46
Vitalts Дата: Пятница, 15.03.2013, 12:52 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация: 6 ±
Замечаний: 0% ±

Michael_S, что значит не хочет? Без кода я не могу сказать где у вас ошибка, ибо код замечательно работает. Ни один год пользуюсь подобными методами.
Попробуйте вывести название файла, который пытаетесь открыть, возможно, лимит исчерпан, и идет попытка открыть файл с пустым названием. Не совершенство кода, написанного на скорую руку :(
Судя по скрину, так и есть. Приведите код


Сообщение отредактировал Vitalts - Пятница, 15.03.2013, 13:08
 
Ответить
СообщениеMichael_S, что значит не хочет? Без кода я не могу сказать где у вас ошибка, ибо код замечательно работает. Ни один год пользуюсь подобными методами.
Попробуйте вывести название файла, который пытаетесь открыть, возможно, лимит исчерпан, и идет попытка открыть файл с пустым названием. Не совершенство кода, написанного на скорую руку :(
Судя по скрину, так и есть. Приведите код

Автор - Vitalts
Дата добавления - 15.03.2013 в 12:52
Michael_S Дата: Пятница, 15.03.2013, 13:10 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Vitalts, Все, разобрался. Не туда Set wb = Workbooks.Open(ActiveWorkbook.Path & "\" & fn) впихивал.
Еще раз спасибо.
 
Ответить
СообщениеVitalts, Все, разобрался. Не туда Set wb = Workbooks.Open(ActiveWorkbook.Path & "\" & fn) впихивал.
Еще раз спасибо.

Автор - Michael_S
Дата добавления - 15.03.2013 в 13:10
nerv Дата: Пятница, 15.03.2013, 13:32 | Сообщение № 9
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

Цитата (Michael_S)
кстати, везде, где возможно, я тоже предпочитаю однострочный If

просто вы не писали МНОГО кода smile Когда перед тобой 1000+ строк в одном только модуле, нет желания разбирать и додумывать. Хочется просто читать. Максимально быстро читать понятный не двусмысленный код. "С недавних пор" однострочный If я не использую вообще )

Цитата (Michael_S)
жалуется на Mask

Это та самая ошибка, о кот. я говорил. Замените Mask на Filter.

Цитата (Vitalts)
В данном случае, мне караз таки было удобнее воспользоваться однострочным if, дабы не закрывать, а перенос для наглядности.

для наглядности многострочный If. В вашем случае это неочевидность.

Цитата (Vitalts)
Кстати, проверки названий файлов на самого себя у вас нет.

функция, представленная мной возвращает список файлов заданной папки. Понятия "самого себя" здесь нет, т.к. функции все равно, откуда она вызывается. Думаю, несложно удалить из коллекции лишний Item.


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba


Сообщение отредактировал nerv - Пятница, 15.03.2013, 13:33
 
Ответить
Сообщение
Цитата (Michael_S)
кстати, везде, где возможно, я тоже предпочитаю однострочный If

просто вы не писали МНОГО кода smile Когда перед тобой 1000+ строк в одном только модуле, нет желания разбирать и додумывать. Хочется просто читать. Максимально быстро читать понятный не двусмысленный код. "С недавних пор" однострочный If я не использую вообще )

Цитата (Michael_S)
жалуется на Mask

Это та самая ошибка, о кот. я говорил. Замените Mask на Filter.

Цитата (Vitalts)
В данном случае, мне караз таки было удобнее воспользоваться однострочным if, дабы не закрывать, а перенос для наглядности.

для наглядности многострочный If. В вашем случае это неочевидность.

Цитата (Vitalts)
Кстати, проверки названий файлов на самого себя у вас нет.

функция, представленная мной возвращает список файлов заданной папки. Понятия "самого себя" здесь нет, т.к. функции все равно, откуда она вызывается. Думаю, несложно удалить из коллекции лишний Item.

Автор - nerv
Дата добавления - 15.03.2013 в 13:32
KuklP Дата: Пятница, 15.03.2013, 14:20 | Сообщение № 10
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Саша, ты из пушки по воробьям стреляешь. Миша пишет:
Цитата (Michael_S)
Все, что об этом файле известно - он находится в той же папке, где и основной, и других файлов в этой папке нет.

Т.е. первый же файл с несовпадающим именем - нужный. Вариант Vitalts гораздо лучше подходит для этого случая и не привлекает внешних библиотек. Я уж не говорю о размере кода.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеСаша, ты из пушки по воробьям стреляешь. Миша пишет:
Цитата (Michael_S)
Все, что об этом файле известно - он находится в той же папке, где и основной, и других файлов в этой папке нет.

Т.е. первый же файл с несовпадающим именем - нужный. Вариант Vitalts гораздо лучше подходит для этого случая и не привлекает внешних библиотек. Я уж не говорю о размере кода.

Автор - KuklP
Дата добавления - 15.03.2013 в 14:20
nerv Дата: Пятница, 15.03.2013, 14:42 | Сообщение № 11
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

Цитата (KuklP)
Саша, ты из пушки по воробьям стреляешь.

Я ни в кого не стреляю, я животных люблю smile Я привел написанный мной ранее код (под свои нужды)

Цитата (KuklP)
Т.е. первый же файл с несовпадающим именем - нужный

повторюсь: моя функция абстрагируется от (свой, чужой и т.п.). Она просто возвращает список файлов папки. При желании может делать это рекурсивно.
Функцию можно подключить и не вносить существенных изменений в основную программу (добавляется одна строка вызова функции).

Цитата (KuklP)
Я уж не говорю о размере кода.

Качество кода не измеряется его размером. Вообще, не понимаю, почему форумчан беспокоит размер (не только этого) кода, если код написан должным образом? Подключили, забыли. Если хотите по прежнему заниматься ручной обсфукацией, экономить на каждой букве, пожалуйста.

Я пишу универсальные функции, кот. таскаю (использую) из проекта в проект. Мне это не мешает ) Если вам нравиться каждый раз переписывать весь код, я не против smile


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba
 
Ответить
Сообщение
Цитата (KuklP)
Саша, ты из пушки по воробьям стреляешь.

Я ни в кого не стреляю, я животных люблю smile Я привел написанный мной ранее код (под свои нужды)

Цитата (KuklP)
Т.е. первый же файл с несовпадающим именем - нужный

повторюсь: моя функция абстрагируется от (свой, чужой и т.п.). Она просто возвращает список файлов папки. При желании может делать это рекурсивно.
Функцию можно подключить и не вносить существенных изменений в основную программу (добавляется одна строка вызова функции).

Цитата (KuklP)
Я уж не говорю о размере кода.

Качество кода не измеряется его размером. Вообще, не понимаю, почему форумчан беспокоит размер (не только этого) кода, если код написан должным образом? Подключили, забыли. Если хотите по прежнему заниматься ручной обсфукацией, экономить на каждой букве, пожалуйста.

Я пишу универсальные функции, кот. таскаю (использую) из проекта в проект. Мне это не мешает ) Если вам нравиться каждый раз переписывать весь код, я не против smile

Автор - nerv
Дата добавления - 15.03.2013 в 14:42
Serge_007 Дата: Пятница, 15.03.2013, 15:20 | Сообщение № 12
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Цитата (nerv)
Качество кода не измеряется его размером. Не понимаю, почему форумчан беспокоит размер кода

Точно так же как и формул. Кстати и скорость тоже от длинны не всегда зависит
Однако ты прав, форумчан это очень беспокоит
Мы все тут хотим размер покороче и даже соревнуемся в этом постоянно в специально созданном для этого разделе biggrin


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата (nerv)
Качество кода не измеряется его размером. Не понимаю, почему форумчан беспокоит размер кода

Точно так же как и формул. Кстати и скорость тоже от длинны не всегда зависит
Однако ты прав, форумчан это очень беспокоит
Мы все тут хотим размер покороче и даже соревнуемся в этом постоянно в специально созданном для этого разделе biggrin

Автор - Serge_007
Дата добавления - 15.03.2013 в 15:20
KuklP Дата: Пятница, 15.03.2013, 16:23 | Сообщение № 13
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Цитата (nerv)
Качество кода не измеряется его размером.
Еще как измеряется. Можно написать на 10 страниц "правильного" кода, а можно то же действие описать одной строкой. Что легче можно будет понять и отредактировать? Ведро картошки можно отвезти на мопеде, не нужен для этого БелАз. Но если тебе так нравитЬся, я тоже не против biggrin


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Пятница, 15.03.2013, 16:25
 
Ответить
Сообщение
Цитата (nerv)
Качество кода не измеряется его размером.
Еще как измеряется. Можно написать на 10 страниц "правильного" кода, а можно то же действие описать одной строкой. Что легче можно будет понять и отредактировать? Ведро картошки можно отвезти на мопеде, не нужен для этого БелАз. Но если тебе так нравитЬся, я тоже не против biggrin

Автор - KuklP
Дата добавления - 15.03.2013 в 16:23
nerv Дата: Пятница, 15.03.2013, 17:12 | Сообщение № 14
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

Цитата (KuklP)
Еще как измеряется

чуть меньше неверно, чем полностью smile

Цитата (KuklP)
Можно написать на 10 страниц "правильного" кода, а можно то же действие описать одной строкой.

опиши одной строкой алгоритм сортировки (без выгрузки на лист)

Цитата (KuklP)
Что легче можно будет понять и отредактировать?

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

Цитата (KuklP)
Ведро картошки можно отвезти на мопеде, не нужен для этого БелАз

его можно донести в руках, если на то пошло. Речь не об этом. Как только Михаилу потребуется изменить что-то в коде, ему придется ковырять всю логику, в т.ч. логику получения имени файла из папки. В моем случае это не требуется, т.к. вынесено в функцию. Если ему потребуется проверять вложенные каталоги, ему придется писать новый алгоритм (перебирать всю логику, вносить изменения, отлаживать и т.п. всю программу, а не отдельную функцию).

Если вы предпочитаете закладывать фундамент дома из спичек, я не против, но сам стараюсь этого не делать smile

Цитата (Serge_007)
Кстати и скорость тоже от длинны не всегда зависит

зависит от алгоритма, а не от кол-ва букв )

Цитата (Serge_007)
Мы все тут хотим размер покороче и даже соревнуемся в этом постоянно в специально созданном для этого разделе

за рекламу 5 smile


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba
 
Ответить
Сообщение
Цитата (KuklP)
Еще как измеряется

чуть меньше неверно, чем полностью smile

Цитата (KuklP)
Можно написать на 10 страниц "правильного" кода, а можно то же действие описать одной строкой.

опиши одной строкой алгоритм сортировки (без выгрузки на лист)

Цитата (KuklP)
Что легче можно будет понять и отредактировать?

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

Цитата (KuklP)
Ведро картошки можно отвезти на мопеде, не нужен для этого БелАз

его можно донести в руках, если на то пошло. Речь не об этом. Как только Михаилу потребуется изменить что-то в коде, ему придется ковырять всю логику, в т.ч. логику получения имени файла из папки. В моем случае это не требуется, т.к. вынесено в функцию. Если ему потребуется проверять вложенные каталоги, ему придется писать новый алгоритм (перебирать всю логику, вносить изменения, отлаживать и т.п. всю программу, а не отдельную функцию).

Если вы предпочитаете закладывать фундамент дома из спичек, я не против, но сам стараюсь этого не делать smile

Цитата (Serge_007)
Кстати и скорость тоже от длинны не всегда зависит

зависит от алгоритма, а не от кол-ва букв )

Цитата (Serge_007)
Мы все тут хотим размер покороче и даже соревнуемся в этом постоянно в специально созданном для этого разделе

за рекламу 5 smile

Автор - nerv
Дата добавления - 15.03.2013 в 17:12
Michael_S Дата: Пятница, 15.03.2013, 17:44 | Сообщение № 15
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Цитата (nerv)
подозреваю, что эту длинную строку будет сложнее понять и отредактировать, чем много правильных/правильно_отформатированных строк

У каждого свои понятия "правильности"
Саш, мы уже как-то говорили на эту тему; твои доводы отчасти верны, но не для всех случаев.
 
Ответить
Сообщение
Цитата (nerv)
подозреваю, что эту длинную строку будет сложнее понять и отредактировать, чем много правильных/правильно_отформатированных строк

У каждого свои понятия "правильности"
Саш, мы уже как-то говорили на эту тему; твои доводы отчасти верны, но не для всех случаев.

Автор - Michael_S
Дата добавления - 15.03.2013 в 17:44
Michael_S Дата: Пятница, 15.03.2013, 17:54 | Сообщение № 16
Группа: Друзья
Ранг: Старожил
Сообщений: 2012
Репутация: 373 ±
Замечаний: 0% ±

Excel2016
Цитата (nerv)
Цитата (Michael_S писал(а)):жалуется на Mask Это та самая ошибка, о кот. я говорил. Замените Mask на Filter.

То же не работает sad
К сообщению приложен файл: 6258894.gif (39.4 Kb)
 
Ответить
Сообщение
Цитата (nerv)
Цитата (Michael_S писал(а)):жалуется на Mask Это та самая ошибка, о кот. я говорил. Замените Mask на Filter.

То же не работает sad

Автор - Michael_S
Дата добавления - 15.03.2013 в 17:54
nerv Дата: Пятница, 15.03.2013, 19:38 | Сообщение № 17
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

Цитата (Michael_S)
То же не работает

Захотелось кнопку "Ok" нажать smile Там же написано "Переменная не определена" и даже выделено какая. Что мешает объявить? Это же пример )

Цитата (Michael_S)
У каждого свои понятия "правильности"

вообще-то нет smile Правильность она "одна на всех мы за ценой не постоим", только это не все понимают )

Цитата (Michael_S)
Саш, мы уже как-то говорили на эту тему; твои доводы отчасти верны, но не для всех случаев

для каких случаев мои доводы не верны?


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba
 
Ответить
Сообщение
Цитата (Michael_S)
То же не работает

Захотелось кнопку "Ok" нажать smile Там же написано "Переменная не определена" и даже выделено какая. Что мешает объявить? Это же пример )

Цитата (Michael_S)
У каждого свои понятия "правильности"

вообще-то нет smile Правильность она "одна на всех мы за ценой не постоим", только это не все понимают )

Цитата (Michael_S)
Саш, мы уже как-то говорили на эту тему; твои доводы отчасти верны, но не для всех случаев

для каких случаев мои доводы не верны?

Автор - nerv
Дата добавления - 15.03.2013 в 19:38
KuklP Дата: Пятница, 15.03.2013, 20:07 | Сообщение № 18
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Саш, ты посмотри на себя со стороны. Ты упорно пытаешься доказать всем участникам темы, что твой громоздкий, глючный в таком виде код лучше, чем пятистрочный код Vitalts.
Цитата (nerv)
Правильность она "одна на всех мы за ценой не постоим", только это не все понимают )

Я понимаю, если бы ты девушке, далекой от Экса, это доказывал. Или ты всех нас дураками считаешь?
Цитата (nerv)
для каких случаев мои доводы не верны?
- и правда думаешь, что кому-то интересно искать все твои сообщения выискивая в них "перлы" а ля nerv? Хочешь быть нарциссом - ради Бога. Растеряешь друзей.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеСаш, ты посмотри на себя со стороны. Ты упорно пытаешься доказать всем участникам темы, что твой громоздкий, глючный в таком виде код лучше, чем пятистрочный код Vitalts.
Цитата (nerv)
Правильность она "одна на всех мы за ценой не постоим", только это не все понимают )

Я понимаю, если бы ты девушке, далекой от Экса, это доказывал. Или ты всех нас дураками считаешь?
Цитата (nerv)
для каких случаев мои доводы не верны?
- и правда думаешь, что кому-то интересно искать все твои сообщения выискивая в них "перлы" а ля nerv? Хочешь быть нарциссом - ради Бога. Растеряешь друзей.

Автор - KuklP
Дата добавления - 15.03.2013 в 20:07
RAN Дата: Пятница, 15.03.2013, 20:36 | Сообщение № 19
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Саш, это, конечно правильно
Цитата (nerv)
Правильность она "одна на всех

но вся проблема в том - что она одна, но для всех разная!

Ты откатись чуть назад, и взгляни на свои коды.
И переменные из одной буквы, и Iif сплошь и рядом, и еще куча всего, что ты сейчас критикуешь!

[offtop]Мне Вася уронил молоток на голову!
И что вы ему сказали?
Ты..., Вася..., неправ!!!!!!!!![/offtop]


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеСаш, это, конечно правильно
Цитата (nerv)
Правильность она "одна на всех

но вся проблема в том - что она одна, но для всех разная!

Ты откатись чуть назад, и взгляни на свои коды.
И переменные из одной буквы, и Iif сплошь и рядом, и еще куча всего, что ты сейчас критикуешь!

[offtop]Мне Вася уронил молоток на голову!
И что вы ему сказали?
Ты..., Вася..., неправ!!!!!!!!![/offtop]

Автор - RAN
Дата добавления - 15.03.2013 в 20:36
nerv Дата: Пятница, 15.03.2013, 22:05 | Сообщение № 20
Группа: Редакторы
Ранг: Обитатель
Сообщений: 431
Репутация: 193 ±
Замечаний: 0% ±

Цитата (KuklP)
что твой громоздкий, глючный

об единственной опечатке я предупредил сразу. Это раз. Два, кто-то не знает, что от него хочет компилятор при
[vba]
Код
Option Expicit
[/vba]
я тут не при чем )

Цитата (KuklP)
Ты упорно пытаешься доказать всем участникам темы

я отстаиваю свою точку зрения

Цитата (KuklP)
и правда думаешь, что кому-то интересно искать все твои сообщения выискивая в них "перлы" а ля nerv?

если мне говорят, что я не прав, я спрашиваю в чем, а не заведомо соглашаюсь

Цитата (KuklP)
Растеряешь друзей.

т.е. если наши мнения не совпадают, то я уже автоматически не друг, потому, что "мнения друзей должны совпадать всегда"? (это следует из твоих слов)

Цитата (RAN)
но вся проблема в том - что она одна, но для всех разная!

Не поверишь, есть нюансы, но в целом правильность одинаковая smile Я общаюсь не только (и уже не столько) на форумах по эксель, и почему то везде (кроме известных мне форумов по эксель) правильность одна. Я никому не навязывал, даже не обсуждал этот вопрос (с совершенно посторонними людьми), но исходя из их сообщений, очевидно, что правильность одна. Это видно по коду, по его стилю. Т.е. все хорошие прогеры видя код говорят, "что такое хорошо, а что такое плохо". Почему надо делать так, а не иначе.

Цитата (KuklP)
Хочешь быть нарциссом - ради Бога

Хоть Жераром Депардье или психом в белой рубашке с пеной у рта (в ваших глазах). Моя точка зрения останется при мне smile

Цитата (RAN)
Ты откатись чуть назад, и взгляни на свои коды.
И переменные из одной буквы, и Iif сплошь и рядом, и еще куча всего, что ты сейчас критикуешь!

в том то и дело. Я сам делал так (писал ужасный, говеный код) и не хочу, чтобы кто-нибудь еще наступал на эти грабли. Это ж очевидно )


Чебурашка стал символом олимпийских игр. А чего достиг ты?
Тишина - самый громкий звук


YM 41001156540584 / WM WMR R21924176233

https://github.com/nervgh/vba
 
Ответить
Сообщение
Цитата (KuklP)
что твой громоздкий, глючный

об единственной опечатке я предупредил сразу. Это раз. Два, кто-то не знает, что от него хочет компилятор при
[vba]
Код
Option Expicit
[/vba]
я тут не при чем )

Цитата (KuklP)
Ты упорно пытаешься доказать всем участникам темы

я отстаиваю свою точку зрения

Цитата (KuklP)
и правда думаешь, что кому-то интересно искать все твои сообщения выискивая в них "перлы" а ля nerv?

если мне говорят, что я не прав, я спрашиваю в чем, а не заведомо соглашаюсь

Цитата (KuklP)
Растеряешь друзей.

т.е. если наши мнения не совпадают, то я уже автоматически не друг, потому, что "мнения друзей должны совпадать всегда"? (это следует из твоих слов)

Цитата (RAN)
но вся проблема в том - что она одна, но для всех разная!

Не поверишь, есть нюансы, но в целом правильность одинаковая smile Я общаюсь не только (и уже не столько) на форумах по эксель, и почему то везде (кроме известных мне форумов по эксель) правильность одна. Я никому не навязывал, даже не обсуждал этот вопрос (с совершенно посторонними людьми), но исходя из их сообщений, очевидно, что правильность одна. Это видно по коду, по его стилю. Т.е. все хорошие прогеры видя код говорят, "что такое хорошо, а что такое плохо". Почему надо делать так, а не иначе.

Цитата (KuklP)
Хочешь быть нарциссом - ради Бога

Хоть Жераром Депардье или психом в белой рубашке с пеной у рта (в ваших глазах). Моя точка зрения останется при мне smile

Цитата (RAN)
Ты откатись чуть назад, и взгляни на свои коды.
И переменные из одной буквы, и Iif сплошь и рядом, и еще куча всего, что ты сейчас критикуешь!

в том то и дело. Я сам делал так (писал ужасный, говеный код) и не хочу, чтобы кто-нибудь еще наступал на эти грабли. Это ж очевидно )

Автор - nerv
Дата добавления - 15.03.2013 в 22:05
Мир MS Excel » Вопросы и решения » Вопросы по VBA » Открыть файл excel. (VBA) (Задача вроде простая, но...)
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!