Mógłbyś jeszcze podpowiedzieć jak wstawić całą ścieżkę do pliku? [syntax=vbscript]Range("A1") = Application.GetOpenFilename[/syntax]
[syntax=vbscript]Sub OtworzPlik() Filename = Application.GetOpenFilename(, , Title) Set a = Workbooks.Open(Filename) a.Activate End Sub [/syntax]
Sprobuj tak [syntax=vb]ChDrive "C" 'tu dysk ChDir "\badbat\" ' tu sciezka do folderza x = Application.GetOpenFilename("Wszystkie pliki, *.*")[/syntax]
Witaj [syntax=vbnet] ChDrive "C:" ' Przejdz do dysku, gdzie konkretny folder ChDir "C:\Folderz\Subfolderz\konkretny folder" ' Przejdz w konkretny folder vFile = Application.GetOpenFilename(... itd) [/syntax]
Coś takiego [syntax=vbscript]plik = Application.GetOpenFilename(FileFilter:=... If plik <> 0 Then Set plik1 = Workbooks.Open(plik) End If[/syntax] ps Niedawno był podobny temat jak chcesz otwierać więcej plików https://www.elektroda.pl/rtvforum/topic3...
Wystarczy np. taka prosta przeróbka: [syntax=vb]strPlik = Application.GetOpenFilename("Pliki Excela (*.xlsx),*.xlsx", 2) sFileName = Split(strPlik, "\")(UBound(Split(strPlik, "\"))) If strPlik = "False" Or UCase(Left(sFileName, 3)) <> "KWS" Then Exit Sub End If[/syntax]
Tu masz bez 'set b': [syntax=vbscript]Sub KopiujMiesiace() Application.ScreenUpdating = False Set a = ThisWorkbook.Sheets(1) Plik = Application.GetOpenFilename Workbooks.Open Plik For x = 1 To Sheets.Count nw = a.Cells(Rows.Count, "A").End(xlUp).Row + 1 Sheets(x).Range("A1:B10").Copy a.Range("A" & nw) Next ActiveWorkbook.Close Application.ScreenUpdating...
[syntax=vbscript]Sub Pobierz() Set w = ActiveWorkbook p = Application.GetOpenFilename("Pliki Excela,*.xls*", MultiSelect:=True) If UBound(p) = 2 Then Set a = Workbooks.Open(p(1)) a.Sheets(1).Range("B10:C23").Copy w.Sheets(1).Range("C10") a.Close False Set a = Workbooks.Open(p(2)) a.Sheets(1).Range("B10:C23").Copy w.Sheets(1).Range("E10") a.Close False...
będzie miał w nazwie "Dane", ale będzie to po ciągu innych znaków 1. Podaj schemat takiego nazewnictwa - jeśli nie jest on stały, a nawet zmiennie-nieprzewidywalny, to znacznie lepszym rozwiązaniem byłoby zastosowanie chociażby "Application.GetOpenFilename" i ręczny wybór pliku z danymi - nie wszystko da się zautomatyzować. 2. Podaj przykład zakresu...
jak mam nazwać w kodzie plik Możesz wybrać ręcznie: [syntax=vbscript]Sub Kopiuj() Set a = ActiveWorkbook Plik = Application.GetOpenFilename(FileFilter:=... Excela, *.xlsx") If Not Plik Then Exit Sub Set b = Workbooks.Open(Plik) b.Sheets(1).Range("B2:B10").Copy a.Sheets(1).Range("C5").PasteSpecial xlPasteValues b.Close False End Sub [/syntax]
Problem w tym że nie odróżniasz nazwy pliku od samego pliku: [syntax=vbscript]Sub OpenClose() ChoiceFileName = Application.GetOpenFilename("Excel-files... 1, "Select One File", , False) If ChoiceFileName = False Then Exit Sub Dim wBook As Workbook Set wBook = Workbooks.Open(Filename:=ChoiceFileName, AddToMru:=False) Application.Wait (Now + TimeValue("0:00:05"))...
testuj [syntax=vb]Sub aaa() Dim pname As Variant Dim file As Variant Dim length As Variant pname = Application.GetOpenFilename( _ filefilter:="Pliki Worda (*.xlsm),*.xlsm", _ Title:="Wybierz plik do importu danych") file = Dir(pname, vbSystem) MsgBox file Path = Left(pname, InStrRev(pname, "\")) Cells(1, 10).Value = Path End Sub[/syntax]
[syntax=vbscript]Sub Przycisk4_Click() Dim plik As Variant Dim i As Byte Set a = ThisWorkbook.Sheets(1) Application.ScreenUpdating = False plik = Application.GetOpenFilename(filefilter:=... Excel (*.xls*),", MultiSelect:=True) For i = 1 To UBound(plik) Set b = Workbooks.Open(plik(i)) Sheets("ORZ").Range("a146").Copy nw = a.Cells(Rows.Count, "C").End(xlUp).Row...
Jeju. Aleś się napisał. Pan Tadeusz przy tym to pestka. :D A wystarczą dwie linijki kodu nie licząc deklaracji. [syntax=vb]Sub OtwórzTekstowy() Dim strPlik As String strPlik = Application.GetOpenFilename Workbooks.OpenText strPlik, xlWindows, 1, xlDelimited, xlTextQualifierDoubleQuote, False, True, False, False, False, False End Sub [/syntax]
Sprobuj to [syntax=vb] Sub zbior() Dim wb As Workbook fl = Application.GetOpenFilename("Excel ,*.xls*", , "Any files") If fl = False Then Exit Sub fl = Dir("*.xls*") With ThisWorkbook While fl <> vbNullString Set wb = Workbooks.Open(fl) shn = wb.Name wb.Sheets(1).Name = shn wb.Sheets(1).Copy after:=.Sheets(.Sheets.Count) wb.Close False fl = Dir...
Ponieważ dane które pobierasz masz rozdzielone tabulatorem, wystarczy taka prosta przeróbka: [syntax=vb]Private Sub CommandButton1_Click() ComboBox1.Clear ComboBox2.Clear Dim InFile As Integer InFile = FreeFile plik_txt = Application.GetOpenFilename("Pliki txt(*.txt),*txt") Open plik_txt For Input As InFile While Not EOF(InFile) Line Input #InFile,...
[syntax=vbscript]Sub Szukanie() NazwaPliku = UCase("SzukanyPlik.XLSX") Set Liczydlo = Sheets("SzukanyPlik") Application.ScreenUpdating = False Do While SzukanyPlik <> NazwaPliku p = Application.GetOpenFilename(FileFilter:=... files, *.xlsx", Title:="Find SzukanyPlik", MultiSelect:=False) SzukanyPlik = UCase(Mid(p, InStrRev(p, "\") + 1)) If...
To może Application.GetOpenFilename?
Możesz zobaczyć to z inputboxem: [syntax=vb]Sub Przycisk2_Kliknięcie() Dim plik As Variant Dim openFile As Workbook Dim Nazwa_Pliku As String Nazwa_Pliku = ActiveWorkbook.Name MsgBox Nazwa_Pliku plik = Application.GetOpenFilename( _ FileFilter:=",*.xl*", _ Title:=" Wczytaj plik z danymi") If plik = False Then Exit Sub Set openFile = Workbooks.Open(Filename:=plik)...
[syntax=vb] Sub karty() Dim src As Worksheet, r&, c& plk = Application.GetOpenFilename If plk = False Then Exit Sub Workbooks.Open plk Set src = ActiveWorkbook.Sheets(1) ThisWorkbook.Activate r = 2 With src While .Cells(r, 1) <> "" For c = 1 To 8 x = .Cells(r, c) If x <> "" Then For i = 1 To Len(x) Cells(c * 3 + 2, i) = Mid(x, i,...
Bez obsługi błędów. Tylko przykład: [syntax=vbscript]Sub Kopiuj() PlikX = Application.GetOpenFilename("Plik Excela , *.xlsx") If PlikX <> False Then Set X = Workbooks.Open(PlikX) PlikY = Application.GetOpenFilename("Plik Excela , *.xlsx") If PlikY <> False Then Set Y = Workbooks.Open(PlikY) Y.Sheets("Arkusz1").Range("A1") = X.Sheets("Arkusz1").Range("A1")...
Dodaj ten makro do nowego wzoru, który ma już stworzone odpowiednie formuły i VBA. [syntax=vb] Sub aktualiz() Dim wb As Workbook Dim wzor As Worksheet, mp As String mp = ThisWorkbook.Path & "\" Set wzor = ThisWorkbook.Sheets(1) zakr = Array("D7:D16", "G7:G9", "C20:C169") plik = Application.GetOpenFilename("Excel Files , *.xls*", , "Wybierz dowolny...
Ten skrypt nie kopiuje dokładnie - nadpisuje ostatni wiersz, bo nie przesuwasz zmiennej NextRow na kolejny wiersz. Kod po poprawkach: [syntax=vbscript]Private Sub CommandButton1_Click() Dim FolderName As String, fileName As String Dim NextRow As Long Dim ws As Worksheet Application.ScreenUpdating = False FilesToOpen = Application.GetOpenFilename _ (filefilter:="Microsoft...
Wydaje mi się, że bardziej chodzi o wybieranie wielu w oknie 'GetOpen'. Nie wnikając w "panel" i "remonty" powinno być coś takiego: [syntax=vbscript]Sub Wczytywaniedancyh() Dim otwieranie As String Dim tb() As Variant, test As Boolean, i As Integer Dim plik As String Dim kopiowanie As String Workbooks("Panel").Activate otwieranie = MsgBox("Wybierz plik",...
Przeczytaj w pomocy funkcje Dir a Application.GetOpenFilename
Makro ma pozwolić na przeliczenie danych z np. 20-30 osobnych plików, które mają dane zawsze w zakresie A1:U100. W pliku TESTY wklejamy do zakładki DATA dane skopiowane z otwartego pliku, następnie w zakładce REPORT w komórkach AE4:AE15, mam wybrane dane po przeliczeniach, które kopiuję do kolejnej zakładki ZBIORECZE WYNIKI. Kolejne pliki są przeliczne...
Czy można zmodyfikować powyższy kod, tak aby wszystkie dane były importowane? Tak :ok: proponuję zamienić na taki kod :spoko: [syntax=vbscript]Public Sub ImpCsv() Dim Monthly As String Dim aConn As Object If ActiveWorkbook.Connections.Count > 0 Then For Each aConn In ActiveWorkbook.Connections aConn.Delete Next aConn ActiveWorkbook.Names(1).Delete...
No teraz to już znam nazwę metody Application.GetOpenFilename
plik chce dowolnie wybrać Application.GetOpenFileName Wiesz, jak napisać kod do otwierania pliku, a nie wiesz, jak skopiować dane z jednego do drugiego? Nie rozumiem chyba.
Application.GetOpenFilename Tym sposobem nie da rady zainteresuj się 'filedialog'
Sorki że się włączę a jeśli nie znamy nazwy pliku i próbujemy go znaleźć, otworzyć oraz skopiować to samo [syntax=vb]Application.GetOpenFilename("... Excela (*.xlsm),*.xlsm", 2)[/syntax] wystarczy?
Witam, tu jest moja część makra. Ominąłem większość bo niepotrzebne w tym problemie. Otóż otwarty plik chce zapisać, zamknąć i przenieść do ścieżki C:/BC/HS. Wszystkie pliki będą pierwotnie w C:/BC. Jak to zrobić? "Plik = Application.GetOpenFilename Set a = Workbooks.Open(Plik).Sheets(1)" Te dwie linijki są potrzebne w innej części makra, przeniosłem...
Przetestuj teraz [syntax=vbscript] Option Explicit Sub Checker() Dim Path As String Dim ost_wiersz As Integer, Kolumna As Integer Dim i As Integer Dim Rng As Range Dim pt As PivotTable Dim j As Integer 'zaciąganie csv Path = Application.GetOpenFilename("CSV Files (*.csv), *.csv") Application.DecimalSeparator = "." Application.UseSystemSeparators = False...
Jeśli dobrze rozumiem to chcesz zaimportować do określonego arkusza plik CSV? Można to zrobić tak, ale sposobów jest więcej (to pierwszy z brzegu przykład). Sub csv_Import() Dim wsheet As Worksheet, file_mrf As String Set wsheet = ActiveWorkbook.Sheets("Arkusz2&... 'nazwa arkusza do którego chcesz zaimportować file_mrf = Application.GetOpenFilename("Te...
To prawdopodobnie brak tego drugiego ampersanda. Teraz zauważyłem że metoda działa ale nadal jest zapętlona przy wyborze pliku. Zapomniałem dodać że działam na przefiltrowanych danych. Jak wyłączam filtrację to normalnie mogę wybrać plik bez zapętlenia. Od czego to zależy? Druga sprawa to chciałbym ustawić jakiś konkretny skoroszyt np otworzony wcześniej...
Mam formularz z kontrolką Image (FotoFracownika) i procedurę Private Sub FotoPracownika_Click() fileToOpen = Application.GetOpenFilename("Pliki graficzne (*.jpg), *.jpg") FotoPracownika.Picture = LoadPicture(fileToOpen) End Sub Po kliknięciu w kontrolkę ładuję obrazek i… nic, nie ma błędu ale i obrazek się nie wyświetla !!! Mogę ten sam obrazek...
Hej, jest to mój pierwszy post na tym forum, dlatego z góry przepraszam za ewentualne błędy. Generalnie od niedawna uczę się pracować z VBA i obecnie staram się napisać program, który porówna dane z dwóch tabel ( liczba kolumn to zawsze od A DO AD), liczba wierszy zmienna. Chciałabym, żeby moje makro porównywało dane z tych tabel, a następnie usunęło...
Super, działa ale od czasu do czasu w pliku źródłowym mam puste wiersze i działa dopiero po usunięciu ich wszystkich tak samo w przypadku gdy po "|" nie ma znaków... mogę liczyć na jakąś prostą modyfikacje Twojego kodu z obsługą błędów? edit: I jeszcze jedno: jak mogę wpleść w to aplikację do wyboru pliku z okna dialogowego? Mam takie cudo: "Application.GetOpenFileName...
W najprostszej postaci taka procedura może wyglądać tak: [syntax=vbscript]Public Sub WskazPlik() Dim WB As Workbook Dim Wybor Wybor = Application.GetOpenFilename("Pliki Excel (*.xls*),*.xls*", , "Wskaż plik", "Wybierz", False) If Wybor <> False Then Set WB = Workbooks.Open(Wybor) Else Exit Sub End If End Sub [/syntax] Otwiera się okno dialogowe,...
Okej, racja poprawiłem. Teraz przeszukuje twój link i wpadłem na coś takiego. Przerobilem to ale najwyraźniej źle bo podświetla na czerwono. [syntax=vbscript]Function CopyModule(Module1 As String, _ VBAProject(plikodtworzeniowy.xlsm) As VBIDE.VBProject, _ VBAProject(Plik) As VBIDE.VBProject, _ OverwriteExisting As Boolean) As Boolean End Function[/syntax]...
Cześć. Mam problem ponieważ nie działa mi kopiowanie zakresu z innego workbooka i wklejenie go do aktywnego workbooka. Cały wcześniejszy kod działa dobrze więc wychodzi na to że z tym jest jakiś problem. To wycinek kodu: [syntax=vbscript]Sub first() Dim wbA As Workbook Dim wsB As Worksheet Dim file As Variant Dim lastRow As Long Dim a As Variant file...
Cześć, mam problem.. mianowicie mam listę 80 comboboxów wg których użytkownik docelowo ma wybierać błędy, następnie za pomocą buttonów, obok ma wybrać zdjęcie ilustrujące dany problem. W poniższym kodzie z wykorzystaniem kształtów wyskakuje błąd, Nie widzi ścieżki zdjęcia : zdj = (wskazplik_metodaexcel) & i wg VB wynosi 1, gdzie faktycznie wartość...
Witaj And (MyWorksheet.Name <> "RAZEM") = dla wszystkich arkuszy niezależnie od ich ilości, z wyjątkiem arkusza RAZEM 2. plik = Application.GetOpenFilename("File excel ,*.xls*", , "Select file") drugie okienko utworzyć formularz z pola listy lub pola kombi i wypełnienie listy nazwamy arkuszy
Witam, Genialnie napisane, znacznie powyżej mojego poziomu wiedzy :-) bardzo dziekuje za pomoc! Mam tylko jedna prośbę - docelowe rozwiazanie, bedzie ciągnęło dane z kilku wskazanych plików zewnętrznych i rożnych zakładek, dlatego potrzebuje "odpiąć" te procedury od automatycznego wykonywania, tak abym mógł zastosować Application.GetOpenFilename i wskazywać...
Mam kod makra w Excel pobierający dane z pliku TXT. Moja prośba jest czy ktoś wie co trzeba zmienić aby zawsze zaczynał wypełnianie Excela od komórki "A1". Czy da sie zrobić tak żeby przycisk wywołujący to makro był w jednym arkuszu a zkopiwane dane z pliku TXT do innego arkusza. Private Sub CommandButton1_Click() 'Sub ImportRange()...
np tak[syntax=vb]Sub zbior() Dim f As Variant f = Application.GetOpenFilename("Pliki Excel ,*.xls*", , "Wybierz dowolny plik") If f = False Then Exit Sub f = Dir("*.xls*") With ThisWorkbook.Sheets(1) While f <> "" Workbooks.Open f ow = .Cells(Rows.Count, 1).End(xlUp).Row + 1 Range("A1:A71,H1:H71,K1:K71,R1:R71").Cop... .Range("A" & ow) Workbooks(f).Close...
Witam. Poniżej przedstawiłem kawałek mojego makra. Niestety nie wiem jak to zapisać tak, żeby nie wyrzucało błędu. "Plik.Open = True" jest źle, jak moge to zapisać inaczej? [syntax=vbnet]Plik = Application.GetOpenFilename Set a = Workbooks.Open(Plik).Sheets(1) Set c = ThisWorkbook.Sheets(1) If Plik.Open = True Then InputBox ("Wybrany plik jest już otwarty!...
Jeżeli to pytanie dotyczy poprzedniego tematu, to trzeba dodać jedną linię kodu. [syntax=vbscript]Sub KopiujMiesiace() Application.ScreenUpdating = False Set a = ThisWorkbook.Sheets(1) Plik = Application.GetOpenFilename Set b = Workbooks.Open(Plik) For x = 1 To Sheets.Count nw = a.Cells(Rows.Count, "A").End(xlUp).Row + 1 ow = Sheets(x).Cells(Rows.Count,...
Możesz wykorzystać taki schemat kodu z pętlą. Szczegóły sobie dopasuj. Z obrazka trudno kopiować, a załącznika nie dałeś. [syntax=text]Sub Okno_w_petli() Dim nplik As Variant Do nplik = Application.GetOpenFilename("Wszystkie pliki (*.*), *.*", , "Wybierz plik") If nplik = False Then If MsgBox("Nie wybrano pliku." & vbLf & "Masz ostatnią szansę."...
Coś ma być zmienne, tylko co, bo zapis dwuznaczny - czy "Y:", czy reszta, czy całość ? Przeczytaj w pomocy podręcznej, chociażby o "Application. GetOpenFilename "
application volatile application processmessages application launcher
ustawić rozrząd mercedes sprinter regeneracja głośnik poradnik astra silnik zapłon
Jaki telefon do 1500 zł? POCO X6 Pro, Samsung Galaxy A36, Motorola Edge 50 Neo, Redmi Note 14 Pro, realme 14 5G Reset do ustawień fabrycznych pralki Whirlpool AWM6081