Jeigu yra būdas padaryti geriau, atrask jį. T. A. Edison

Sveiki, Svečias
Prisijungimo vardas: Slaptažodis: Prisiminti mane
  • Puslapis:
  • 1
  • 2
  • 3

TEMA: Userform

Userform prieš 2 m. 8 mėn. #7

  • seilor
  • seilor avataras
  • Neprisijungęs
  • Dalyvis
  • Žinutės: 22
  • Reputacija: 0
O pats excel niekada nepasileidžia ?
Administratorius uždraudė viešą pranešimų rašymą.

Userform prieš 2 m. 8 mėn. #8

  • hattrick
  • hattrick avataras
  • Neprisijungęs
  • Veteranas
  • Žinutės: 60
  • Gauta padėka 35
  • Reputacija: 8
Ne :) Reikia specialiai per File -> Open atidarinėti failą, kad Macro'sas neužsikrautų. Kitu atveju visada įsijungia UserForm
Administratorius uždraudė viešą pranešimų rašymą.

Userform prieš 2 m. 8 mėn. #9

  • seilor
  • seilor avataras
  • Neprisijungęs
  • Dalyvis
  • Žinutės: 22
  • Reputacija: 0
Kad jau pavyko įkelti failą, dar keli klausimai excel guru :)
Kodėl iš user form text laukelių informaciją meta į activesheet, o ne ten kur nurodyta pvz. sheet1 ?
Gal kas gali padėti, kad spaudžiant "Išsaugoti" Išsisiųstu email per outlook su prisegtu pdf failu ?
Kodą turiu kuris tai daro yra ant išsaugoti ir išsiųsti mygtuko. Bet jis ne pilnai atlieka tai ko man reikia. Išsaugoti mygtukas atlieka tai ko reikia. O kaip surišti 2 kodus į vieną, kad veiktų išsaugojimas pdf ir išsiuntimas, nesiriša man.
Būčiau dėkingas už pagalbą. Ačiū.
Administratorius uždraudė viešą pranešimų rašymą.

Userform prieš 2 m. 7 mėn. #10

  • hattrick
  • hattrick avataras
  • Neprisijungęs
  • Veteranas
  • Žinutės: 60
  • Gauta padėka 35
  • Reputacija: 8
1) Reikia nurodyti, kur būtent kodui rašyti informaciją. Pas tave kode nurodytas tik Range'as, kas automatiškai reiškia, jog rašys ActiveSheet. Pakeičiau, kad suvestą informaciją rašytų "Lapas1" sheet'e.
2) Pakoregavau kodą, kad paspaudus mygtuką "Išsaugoti" iškart susikurtų laiškas su .pdf attachmentu.
3) Visada išmeta UserForm'ą man (kai ne iš interneto atidarau failą ir kai nėra disabled'inti macrosai). Pridėjau dar Quit kodo gale - Workbooks("test.xlsm").Close SaveChanges:=False. Nes kartais atidarant kitą Excelio failą užkraudavo šitą :)

Tik ten dar nemažai nereikalingo kodo yra :) ir šiaip atsargiai su tais failų pavadinimų kūrimais. Pas tave dabar sukuria failą su tarpu gale pavadinimo. Tai čia jau tokius pasikoreguok, bet viskas kitas turėtų veikti :)
Administratorius uždraudė viešą pranešimų rašymą.
Jums padėkojo šie nariai: seilor

Userform prieš 2 m. 7 mėn. #11

  • seilor
  • seilor avataras
  • Neprisijungęs
  • Dalyvis
  • Žinutės: 22
  • Reputacija: 0
Kai pas mane VBA bandymų laukas yra tai ir visokio š... pilna. Kai iš interneto prisigaudai ir bandai pritaikyti savo reikmėm. :) Optimizuoti kai dar nemoku kodo tai taip ir gaunasi šiukšlynas. O kur ten nereikalingą kodą matei ir kas su failų pavadinimais ten per negerumai ? Beje, bandant išsaugoti pas mane meta Subscript out of range. Nepatinka jam (Workbooks("test.xlsm").Close SaveChanges:=False) tavo eilutė kažkodėl :(.
Administratorius uždraudė viešą pranešimų rašymą.

Userform prieš 2 m. 7 mėn. #12

  • hattrick
  • hattrick avataras
  • Neprisijungęs
  • Veteranas
  • Žinutės: 60
  • Gauta padėka 35
  • Reputacija: 8
Na dabar visas cmdSend macro nereikalingas.
Dim sPath As String
sPath = ThisWorkbook.Path
Panašu, kad irgi niekur nenaudoji :)

O su pavadinimais tai kaip ir minėjau prideda nereikalingą tarpą. Pabandyk pervadinti failą, tada pamatysi, kad gale pavadinimo padėtas tarpas dar.

Kokį Excelį naudoji? Pas mane su 2016 jokių bėdų :) Pabandyk "Išsaugoti" macro kodą nusikopijuoti į Module1 ir vykdyk kodą žingsnis po žingsnio (F8), žiūrėk, kas gaunasi kiekvienoje eilutėje ir kas stringa.
Nepatinka jam (Workbooks("test.xlsm").Close SaveChanges:=False) - gal pakeitei pavadinimą failo? :)

Dar + prie cmdQuit macro nereikia:
Else
Application.Visible = False
Administratorius uždraudė viešą pranešimų rašymą.
Jums padėkojo šie nariai: mariuslit, seilor
  • Puslapis:
  • 1
  • 2
  • 3
Moderatoriai: bankeris
Puslapio sukūrimo laikas: 0.263 sekundžių