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

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

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

Я смог сделать это для индивидуального диапазона, без проблем.

Я хочу иметь возможность сделать это для полной таблицы, чтобы я мог определить дополнительные диапазоны по мере необходимости и заполнять их пользователям без необходимости отдельного обновления.

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

-Open Userform
-Выбрать бренд
-Пользовательская форма автоматически заполняет несколько моделей на основе Sheet2.Range("Brand")
-Выберите бренд2
-Заселения на основе Sheet2.Range("brand2")
-Отправить

Второй процесс
-Открытая сетьРасположение / Рабочая тетрадь
-Добавочный диапазон ("Brand3")
-Сохранить

-Открытая местная рабочая тетрадь

-Sheet2 = NetworkLocation/Workbook/Sheet2
-Пользователь заполняется дополнительными данными для Brand3

Возможно ли это, и не могли бы вы посоветовать, как действовать дальше?

Спасибо :)

1 ответ1

1

Ладно, все починили. :)

И отвечая на мой собственный вопрос, лол - Просто ради гугла.

Private Sub Workbook_Open()

Const fromFile = "NetworkDriver\Folder\Workbook.xlsx"

Application.DisplayAlerts = False
Sheets("Sheet8").Delete
Sheets("Sheet9").Delete
Application.DisplayAlerts = True

Dim srcBook As Workbook
Dim wkb As Workbook
Set wkb = ActiveWorkbook
' open workbook and set reference!





Set srcBook = Application.Workbooks.Open(fromFile, _
UpdateLinks:=False, _
ReadOnly:=True, _
AddToMRU:=False)

Application.ScreenUpdating = False
srcBook.Sheets("Sheet8").Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
srcBook.Sheets("Sheet9").Copy After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)

srcBook.Close False
wkb.Sheets("Sheet8").Visible = False
wkb.Sheets("Sheet9").Visible = False

Application.ScreenUpdating = True



End Sub

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .