Копіювання Повний аркуш, що включає кілька визначених імен діапазонів за допомогою макросу або VBA


0

Я намагаюся створити книгу для своєї компанії для відстеження продажів.

Проблема, з якою я стикаюся, полягає в тому, що я хочу, щоб кожен користувач мав свою власну книгу, збережену на своєму локальному комп'ютері для отримання власної інформації. У цій робочій книжці використовується форма користувача, щоб подати дані, які витягують інформацію з аркуша робочої книги до автозаповнення на основі марки пристрою, що продається.

Я хочу мати можливість оновлювати цю інформацію на мережному диску і автоматично оновлювати книгу кожного разу, коли вона відкривається.

Я зміг зробити це для окремого діапазону, без проблем.

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

В основному, є 2 процеси, які необхідно зробити, перший процес вже зроблений, але я покажу вам, чому мені потрібно копіювати кілька діапазонів

-Open Userform
-Виберіть бренд
-Userform автоматично заповнює кілька моделей на основі Sheet2.Range ("Бренд")
-Вибрати Brand2
- Популяції на основі Sheet2.Range ("Brand2")
-Подати

Другий процес
-Open NetworkLocation / Workbook
- Діапазон додавання ("Brand3")
-Зберегти

-Відкрити локальну книгу

-Sheet2 = NetworkLocation / Workbook / Sheet2
-Userform заповнює додаткові дані для Brand3

Чи можливо це, і чи не могли б ви порадити, як діяти?

Дякую :)


Так що ви хочете базу даних функцій в Excel?
dvhh

Насправді, я думаю, ви маєте рацію. Я не працював у базах даних дуже довго, тому вибачте мене, якщо я трохи іржавий. У Excel у мене збережена локальна база даних, я просто хочу бути в змозі оновити мережеве розташування і оновити місцеве розташування для відповідності
Guest123465798

Відповіді:


1

Гаразд, все зафіксували. :)

І відповідаючи на моє власне питання lol - Тільки для googles саке.

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
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.