Cześć od razu proszę o wyrozumiałość bo jestem jeszcze świeży w tym temacie. Ogólnie mój problem polega na tym że mam plik docx z 530 pytaniami i potrzebuje go przekonwertować go na plik tak żeby od razu był gotowy do wgrania do bazy. Głównie mi chodzi o to żeby pousuwało oznaczenia odpowiedzi a,b,c,d i żeby access zczytał mi to każdą odpowiedź jako oddzielną kolumne.
Post roku.
To pytanie z cyklu, samochód mi nie działa, co trzeba zrobić aby zaczął jeździć?
Po pierwsze nie wiemy co jest w pliku docx, domyślam się, że używasz accessa, nie wiem co to znaczy plik gotowy do wgrania.
Więc ogólnie odpowiem, da się.
Panczo napisał(a):
To pytanie z cyklu, samochód mi nie działa, co trzeba zrobić aby zaczął jeździć?
Po pierwsze nie wiemy co jest w pliku docx, domyślam się, że używasz accessa, nie wiem co to znaczy plik gotowy do wgrania.
Więc ogólnie odpowiem, da się.
W pliku znajduję się 530 pytań z egzaminu ee.08
Samochód jest osobowy.
Panczo napisał(a):
Samochód jest osobowy.
W pliku jest 530 pytań posegregowane od 1 do 530.
Chcę wgrać to do accessa tak żeby utowrzyło mi z tego kolumny oddzielna na treść pytania i każda oddzielna na jedną odpowiedź
Zadałem w poście 3 pytania, na razie jak mantrę powtarzasz że jest ich 530. Czego oczekujesz? Nie mam szklanej kuli więc nie wiem jak ten dokument wygląda.
Więc powtórzę da się.
Pokaż strukturę pliku, a pewnie lepiej gdybyś go wrzucił do np. .txt
Plik txt z pytaniami
Jak poprawisz pytania od 129 do 138, 151-313 i 506 to da się napisac makro , które zaimportuje to do Excela.
najpierw musisz przygotować ten plik, chodzi o to by miał każde pytanie w jednej linii i brak pustych, oraz trzeba usunąć taby.
Najprościej użyć notepad++ i usunąć puste linie + nagłówek + tabulatory
Poprawy wymagają pytania: 7, 59, 60, 170, 183, 348
Brak jest pytania 500
Później odpalasz Access z danych zewnętrznych pobierasz plik txt (musi mieć nazwę zgodną z DOS, czyli nie może mieć kropki w nazwie i max 8 znaków)
Podczas importu
- Klikasz zawansowane i zmieniasz kodowanie na
Środkowoeuropejski (Windows)
- Wybierasz
ograniczony
- Nazwa pola zmieniasz na
linia
- Typ danych na
długi tekst
- Zaznaczasz:
pozwalaj programowi Access dodać klucz podstawowy
- Importuj do tabeli
plik
W wyniku tej operacji będziesz miał tabelą plik z polami linia i identyfikator, zweryfikuj czy identyfikator odpowiada linii zaimportowanej.
Jeżeli wszystko się zgadza to tworzysz takie zapytanie w kwerendzie:
select
pl.p+1
, max(iif(pl.identyfikator=pid,pl.linia,null)) as Pytanie
, max(iif(pl.identyfikator=pid+1,pl.linia,null)) as odpA
, max(iif(pl.identyfikator=pid+2,pl.linia,null)) as odpB
, max(iif(pl.identyfikator=pid+3,pl.linia,null)) as odpC
, max(iif(pl.identyfikator=pid+4,pl.linia,null)) as odpD
into
wynik
from (SELECT
Identyfikator
, linia
, (identyfikator-1) \ 5 AS p
FROM
plik) as pl
inner join (
select
p
, min(Identyfikator) as pid
from (
SELECT
Identyfikator
, linia
, (identyfikator-1) \ 5 AS p
FROM
plik) as dt
group by
p) as tmp on tmp.p=pl.p
group by
pl.p
i uruchamiasz, w efekcie otrzymasz tabelę wynik, która wygląda tak: