Witam
Stworzyłem program w vba, który eksportuje dane z tabeli (Userform) do pliku Excel.
Problem polega na tym, że program będzie działał normalnie za pierwszym razem. W 2. (bez modyfikacji) pojawi się błąd 1004.
KOD:
Sub Export_excel()
Sun i, j As liczba całkowita
Sun i0, j0 jako liczba całkowita
Oceńmy liczbę punktów
j0 = 0
i0 = 3
k = 0
Podczas gdy j0 < 1
Jeśli Array.Workbook1.Cells(i0, 1) <> wartość "Brak", to
k = k + 1
i0 = i0 + 1
Inaczej
d0 = 1
Zakończ jeżeli:
Wend
Jeśli k = 0, to
MsgBox "Tabela jest pusta"
Wyjdź z subwoofera
Zakończ jeżeli:
Punkty = k + 1
Wywołaj polecenie AddNewWorkbook
"Tworzymy obiekt Excel
'Ustaw xlApp = CreateObject("Excel.Application")
'Ustaw xlBook = xlApp.Skoroszyty
Otwórz plik
'Workbooks.Open fileName:=lien_fichierxlsx
Skoroszyty (Nom_Fichier i ".xlsx"). Aktywuj błąd "1004"
"Arkusze robocze". Wybrać
Dla i = 1 TB Nbpoints + 1
Zakres("A" & i) = Tablica.Skoroszyt1.Komórki(i, 1)
Zakres("B" & i) = Tablica.Skoroszyt1.Komórki(i, 2)
Zakres("C" & i) = Tablica.Skoroszyt1.Komórki(i, 3)
Zakres("D" & i) = Tablica.Skoroszyt1.Komórki(i, 4)
Zakres("E" & i) = Tablica.Skoroszyt1.Komórki(i, 5)
Zakres("F" & i) = Tablica.Skoroszyt1.Komórki(i, 6)
Następny
ActiveWorkbook.Zapisz
Aktywny skoroszyt.Zamknij
MsgBox "Eksport powiódł się!", vbMsgBoxSetForeground + vbExclamation, "PROJEKT TRAPRO"
Koniec subwoofera
Załączam makro do Ciebie, jeśli chcesz zobaczyć, jak to zrobiłem.
Musisz utworzyć folder: D:\Import-Export\ (lub zmienić łącze w Userform_Initialize)
Bardzo dziękuję za odpowiedzi,
JB
copie_de_prog.swp