Форум программистов, компьютерный форум, киберфорум
Visual Basic
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
0 / 0 / 0
Регистрация: 03.02.2012
Сообщений: 23
1

Почему при открытии файла эксель, появляется из фонового скрытого режима мой файл эксель

21.03.2018, 11:21. Просмотров 1411. Ответов 11
Метки нет (Все метки)

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

Visual Basic
1
2
3
4
5
6
7
8
Public Sub start_excel()
    Dim path as string, oExcell  as Object,WBB as object
    path = "d:\my_file.xlsx"
    On Error Resume Next
     Set oExcell = CreateObject("Excel.Application")
     Set WBB = oExcell.Workbooks.Open(path, ReadOnly:=True)
     oExcell.Visible = False 
End Sub
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
21.03.2018, 11:21
Ответы с готовыми решениями:

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

Фильтр данных при открытии книги эксель
Подскажите, где я ошиблась. Я беру диапазон ("А14:А34"), а он у меня выбирает из всего столбца "А"...

При открытии любых файлов (ворд, эксель, фоток и т.д.) комп подвисает секунд на 30
Добрый день знающие компьютер люди! Проблема у меня в следующем: при открытии любых файлов (ворд,...

Автоматизация переноса значений из одного документа в эксель в другой эксель
Мне необходимо из таблицы перенести все данные в акта. На каждую строчку таблицы необходим...

11
0 / 1 / 3
Регистрация: 18.10.2012
Сообщений: 594
22.03.2018, 11:31 2
так вы же тот файл с которым отработали не закрыли вот и висит в фоном режиме

Добавлено через 3 минуты
Visual Basic
1
2
3
Shell ("taskkill /F /IM excel.exe") 'убивает все приложение xl которые открыты
xl.Close True 'закрывает книгу
Set xl = Nothing 'закрывает сам экземпляр xl
да к стати сохранять думаю то же надо?
Visual Basic
1
xl.Workbooks("Лист1").Save
Добавлено через 13 минут
обсуждалось примерное:
Закрытие и открытие xl файла
Как узнать открыт ли файл Excel
а это думаю будет полезна
Закрыть одну из двух книг и удалить ее из диспетчера задач
0
0 / 0 / 0
Регистрация: 03.02.2012
Сообщений: 23
22.03.2018, 18:50  [ТС] 3
Вы немного не поняли, файл эксель который открывается с помощью моей программы и должен висеть в фоновом режиме, мне нужно чтобы при открытии совсем другого файла эксель, тот что в фоновом режиме не должен появляться из фона а от появляется.
0
Заблокирован
22.03.2018, 20:23 4
malder_d, попробуйте так -
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
Public Sub start_excel()
    Dim path As String, oExcell  As Object, WBB As Object
    path = "d:\my_file.xlsx"
    On Error Resume Next
     Set oExcell = CreateObject("Excel.Application")
     Set WBB = oExcell.Workbooks.Open(path, ReadOnly:=True)
 
     oExcell.ActiveWindow.Visible = False
 
     oExcell.Visible = False
End Sub
1
0 / 1 / 3
Регистрация: 18.10.2012
Сообщений: 594
23.03.2018, 09:22 5
я думаю что он будет в любом случае глаза мозолить, пока не закроете его, могу и ошибаться..
0
0 / 0 / 0
Регистрация: 03.02.2012
Сообщений: 23
23.03.2018, 10:28  [ТС] 6
Остап Бонд
Вариант попробовал, окно не появляется, НО когда закрываю второй файл всплывает окно с запросом сохранить ли изменение в первом файле, хотя я там изменений не делаю.
0
Заблокирован
23.03.2018, 10:53 7
Мы изменили свойство
Visual Basic
1
oExcell.ActiveWindow.Visible = False
это изменение и имеется ввиду, наверно.
Сохраните один раз и больше не повторится, наверно?
Или добавьте после изменения ещё одну строку
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
Public Sub start_excel()
    Dim path As String, oExcell  As Object, WBB As Object
    path = "d:\my_file.xlsx"
    On Error Resume Next
     Set oExcell = CreateObject("Excel.Application")
     Set WBB = oExcell.Workbooks.Open(path, ReadOnly:=True)
 
     oExcell.ActiveWindow.Visible = False
 
     WBB.SAVED=TRUE
 
     oExcell.Visible = False
End Sub
0
0 / 0 / 0
Регистрация: 03.02.2012
Сообщений: 23
23.03.2018, 13:41  [ТС] 8
Добавил WBB.SAVED=TRUE, в этом случае теперь при закрытии второго файла сохранение по первому не спрашивает, но когда закрывается второй файл, я так понимаю теряется ссылка на первый, так как когда нажимаю кнопку для проверки по первому, пишет ошибку
Run-Time error 462
The romote server machine does not exist is unavailable
0
Заблокирован
23.03.2018, 15:01 9
Цитата Сообщение от malder_d Посмотреть сообщение
когда закрывается второй файл, я так понимаю теряется ссылка на первый
Естесственно, если вы закрыли второй файл общим крестиком - значит закрыли весь сеанс Excel (выплеснули грязную воду вместе с ребенком)
0
0 / 0 / 0
Регистрация: 03.02.2012
Сообщений: 23
23.03.2018, 15:55  [ТС] 10
Это все хорошо,, но мне нужно чтобы мой первый файл не закрывался и не появлялся пока я сам не закрою прошграмму.
0
0 / 0 / 0
Регистрация: 03.02.2012
Сообщений: 23
27.03.2018, 15:05  [ТС] 11
форумчане, больше нет ижей как можно выправить ситуацию
0
180 / 179 / 30
Регистрация: 11.10.2016
Сообщений: 570
28.03.2018, 14:15 12
попробовал сделать такую же ситуацию у себя. Вот что получается:

- если сначала создать Экселевский объект и открыть свою книгу, то когда вы вручную загрузите еще один документ в Эксель, ваш первый документ тоже будет отображаться;
- если вручную запустить Эксель, хоть с документом, хоть - без, то можно создать Экселевский объект и загрузить вашу книгу, потом можно вручную открывать другие книги в Экселе - ваш документ виден не будет,

То есть, имеет место быть способ запуска Экселя

проверял на Экселе 2003
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.03.2018, 14:15

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Заполнить файл эксель с файла html
Здравствуйте, например у пользователя на компьютере есть файл эксель, можно создать файл html,...

Как отвязать эксель-файл(шаблон) от файла на диске?
Есть файл-шаблон. Надо открыть его, заполнить и оставить открытым. Но! надо отвязать этот...

Обработка Try.Except при загрузке из эксель файла
Загружаю данные из файла эксель в стринггрид.Код: function...

Файл эксель в памяти
можно ли открыть файл xls не в виде отдельной книги, а в памяти? Так, чтобы с ним можно было бы...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.