Elektroda.pl
Elektroda.pl
X
Please add exception to AdBlock for elektroda.pl.
If you watch the ads, you support portal and users.

Excel - makra - Makra zapisujące nazwę pliku z komórki arkusza oraz uzupełniające tabelę

konczalski 23 Sep 2022 01:52 162 4
  • #1
    konczalski
    Level 2  
    Cześć,

    Proszę o pomoc ponieważ nie potrafię sobie z tym poradzić, a nie jestem biegły w temacie makr.
    Otóż pilnie potrzebuję skonstruować plik, który pełniłby rolę programu do generowania prostych faktur.
    Plik zrobiony według rzeczywistych potrzeb, miał zostać jedynie zautomatyzowany tak, by po kliknięciu w przycisk "Generuj wydruki" odbywał się zapis faktury (oryginału oraz kopii) do pliku PDF z jednoczesnym wpisaniem wygenerowanej faktury do tabeli z rejestrem faktur.



    Mam trzy problemy i nie potrafię sobie z nimi samemu poradzić:
    1. Chciałbym aby pliki pdf zapisywały się w formacie : "Faktura Imię Nazwisko FV_NR_MM_RR oryginał.pdf" oraz "Faktura Imię Nazwisko FV_NR_MM_RR kopia.pdf". (Nazwa pliku bez dopisku oryginał lub kopia znajduje się w komórce J1 w zakładce 'Faktura') Za każdym razem gdy próbuję różnych kodów, to albo makro nie działa albo zapisuje pliki "po swojemu".
    2.Następnie aby zapisane pliki zapisywały się w konkretnych lokalizacjach wg klucza tj. "C:\Users\Patryk\Desktop\Faktury prywatne\ rok\ miesiąc gdzie rok i miesiąc byłby przypisywany automatycznie zgodnie z danymi z rejestru faktur.
    3. Chciałbym również aby po wygenerowaniu wydruków przy drugiej i kolejnych fakturach zapisy w zakładce 'Rejestr faktur' nie nadpisywały pierwszego wiersza w tabeli, tylko następowały w kolejnych wierszach poniżej ostatniego zapisu - tu również poległem.

    W załączniku umieszczam mój plik, a poniżej wklejam bardzo podstawowy kod makra który zarejestrowałem.
    Z góry bardzo dziękuję za wszelką pomoc!

    Sub GenerujWydruki()
    '
    ' GenerujWydruki Makro
    '

    '
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    "C:\Users\Patryk\Desktop\Faktury prywatne\Faktura.pdf", Quality:= _
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
    OpenAfterPublish:=True
    Range("Q2:R2").Select
    ActiveCell.FormulaR1C1 = "Kopia"
    Range("K4").Select
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    "C:\Users\Patryk\Desktop\Faktury prywatne\Faktura Kopia.pdf", Quality:= _
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
    OpenAfterPublish:=True
    Range("Q2:R2").Select
    ActiveCell.FormulaR1C1 = "Oryginał"
    Range("P1").Select
    Selection.Copy
    Sheets("Lista faktur").Select
    Range("C16").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "FV / 1 / 8 / 2022"
    Sheets("Faktura").Select
    Range("R26").Select
    Selection.Copy
    Sheets("Lista faktur").Select
    Range("D16").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Sheets("Faktura").Select
    Range("M11").Select
    Application.CutCopyMode = False
    Selection.Copy
    Sheets("Lista faktur").Select
    Range("B16").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    Sheets("Faktura").Select
    Range("U4").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = " "
    Range("U4").Select
    Selection.ClearContents
    ActiveWorkbook.Save
    End Sub
  • #2
    PRL
    Level 40  
    Dlaczego nie chcesz użyć programu do fakturowania?
  • #3
    konczalski
    Level 2  
    PRL wrote:
    Dlaczego nie chcesz użyć programu do fakturowania?


    To nie dla mnie, dwie osoby które tego potrzebują, będą wystawiać takie faktury z tytułu najmu prywatnego (głownie nieruchomości i powierzchni reklamowej), kilka - kilkanaście dokumentów w miesiącu dla kilku - kilkunastu nabywców. Założenia są takie by było to bezpłatne w użytkowaniu, możliwie najprostsze w obsłudze, "w starym stylu" :)
  • #4
    PRL
    Level 40  
    Quote:
    z tytułu najmu prywatnego (głownie nieruchomości i powierzchni reklamowej)


    Quote:
    bezpłatne


    Program za 100 złotych przerasta budżet na rynku nieruchomości?
  • #5
    konczalski
    Level 2  
    PRL wrote:
    Quote:
    z tytułu najmu prywatnego (głownie nieruchomości i powierzchni reklamowej)


    Quote:
    bezpłatne


    Program za 100 złotych przerasta budżet na rynku nieruchomości?


    To nie jest taki duży budżet rynku nieruchomości jakby się mogło wydawać i chodzi tu bardziej o przyzwyczajenia.