דילוג לתוכן

תכנות

4.9k נושאים 40.2k פוסטים

קטגוריות משנה


  • 22 נושאים
    137 פוסטים
    katzK
    שלום לכולם התבקשתי רבות מחברים פיתרון לבעיה הידועה לבצע מיזוג דואר, אך לשמור קובץ PDF נפרד לכל רשומה, עם שם מותאם אישית. אפרט כאן במדריך שלב אחר שלב איך לבצע זאת, תהיו איתי עד הסוף מקווה שתהנו... נתחיל... שלב א: ראשית בקובץ ה- Excel של רשימת הנמענים, הוסיפו לטבלת הנתונים ארבעה עמודות בשמות כדלהלן (חשוב שהשמות יהיו מדויקים ללא רווחים מיותרים - לתשומת ליבכם): DocFolderPath DocFileName PdfFolderPath PdfFileName שלב ב: צרו שתי תיקיות נפרדות, אחד לקבצי הפלט בפורמט docx, ואחד לקבצי הקלט בפורמט pdf, העתיקו את נתיב התיקייה של קבצי ה- docx והדביקו אותם עבור כל רשומה בשדה שיצרתם בשם DocFolderPath, לאחמ"כ חזרו על הפעולה והפעם העתיקו את נתיב התיקייה של קובצי ה- PDF והדביקו בשדה PdfFolderPath. בשדה DocFileName כתבו את השם של הקובץ עבור הרשומה - ניתן להשתמש בנוסחאות, כמו"כ בשדה PdfFileName כתבו את שם הקובץ כנ"ל. שלב ג: פתחו את קובץ ה- word והשלימו את פעולת המיזוג כרגיל, עצבו את המסמך כרצונכם. שלב ד: פתחו את לשונית מפתחים בקובץ ה- word פתחו את עורך הקוד הוסיפו מודל חדש מצו"ב צילום מסך: [image: 1662883665514-3eb2538f-9ab1-41eb-a1df-452212916da6-image.png] הדביקו את הקוד הבא: Sub MailMergeToPdfBasic() ' Mark the start of the Subroutine (i.e. Macro) and name it "MailMergeToPdf" ' Macro created by Imnoss Ltd ' Please share freely while retaining attribution ' Last Updated 2021-05-03 Dim masterDoc As Document, singleDoc As Document, lastRecordNum As Long ' Create variables ("Post-it Notes") for later use Set masterDoc = ActiveDocument ' Identify the ActiveDocument (foremost doc when Macro run) as "masterDoc" masterDoc.MailMerge.DataSource.ActiveRecord = wdLastRecord ' jump to the last active record (active = ticked in edit recipients) lastRecordNum = masterDoc.MailMerge.DataSource.ActiveRecord ' retrieve the record number of the last active record so we know when to stop masterDoc.MailMerge.DataSource.ActiveRecord = wdFirstRecord ' jump to the first active record (active = ticked in edit recipients) Do While lastRecordNum > 0 ' create a loop, lastRecordNum is used to end the loop by setting to zero (see below) masterDoc.MailMerge.Destination = wdSendToNewDocument ' Identify that we are creating a word docx (and no e.g. an email) masterDoc.MailMerge.DataSource.FirstRecord = masterDoc.MailMerge.DataSource.ActiveRecord ' Limit the selection to just one document by setting the start ... masterDoc.MailMerge.DataSource.LastRecord = masterDoc.MailMerge.DataSource.ActiveRecord ' ... and end points to the active record masterDoc.MailMerge.Execute False ' run the MailMerge based on the above settings (i.e. for one record) Set singleDoc = ActiveDocument ' Identify the ActiveDocument (foremost doc after running the MailMerge) as "singleDoc" singleDoc.SaveAs2 _ FileName:=masterDoc.MailMerge.DataSource.DataFields("DocFolderPath").Value & Application.PathSeparator & _ masterDoc.MailMerge.DataSource.DataFields("DocFileName").Value & ".docx", _ FileFormat:=wdFormatXMLDocument ' Save "singleDoc" as a word docx with the details provided in the DocFolderPath and DocFileName fields in the MailMerge data singleDoc.ExportAsFixedFormat _ OutputFileName:=masterDoc.MailMerge.DataSource.DataFields("PdfFolderPath").Value & Application.PathSeparator & _ masterDoc.MailMerge.DataSource.DataFields("PdfFileName").Value & ".pdf", _ ExportFormat:=wdExportFormatPDF ' Export "singleDoc" as a PDF with the details provided in the PdfFolderPath and PdfFileName fields in the MailMerge data singleDoc.Close False ' Close "singleDoc", the variable "singleDoc" can now be used for the next record when created If masterDoc.MailMerge.DataSource.ActiveRecord >= lastRecordNum Then ' test if we have just created a document for the last record lastRecordNum = 0 ' if so we set lastRecordNum to zero to indicate that the loop should end Else masterDoc.MailMerge.DataSource.ActiveRecord = wdNextRecord ' otherwise go to the next active record End If Loop ' loop back to the Do start End Sub ' Mark the end of the Subroutine שלב ה וסיום: סגרו את עורך הקוד. לחצו על כפתור פקודות מאקרו שבכרטיסיית מפתחים, בחרו את המאקרו בשם MailMergeToPdfBasic ולחצו הפעל מצו"ב צילום מסך [image: 1662883849719-3890ce69-c0e9-4f30-89ce-3e97b7de750b-image.png] כעת שבו בנחת והמתינו עד ליצירת כל הקבצים, להנאתכם תפתחו את תיקיות הפלט שיצרתם וגלו שהיא מלאה קבצים קובץ לכל רשומה בשם המתאים שהגדרתם לה. מקור
  • ארכיון האתר הקודם והחביב קוד-613

    1k 10k
    1k נושאים
    10k פוסטים
    chagoldC
    @אבי אמר בשוב, צילומי הצ'קים בבנקים: התעסקתי לאחרונה עם סורקים של חברת MAGTEK, הם ידידותיים ונוחים להתממשקות, אבל כמדומני שהבנקים בישראל מוכנים לקבל סריקות רק מסורקים של חברת PANINI @אבי איך יוצרים אתך קשר?
  • 31 133
    31 נושאים
    133 פוסטים
    Y.Excel.AccessY
    יש כמה נוסחאות חדשות שממש משנות את כללי המשחק בגוגל שיטס: CHOOSECOLS לבחירת עמודות ממערך CHOOSEROWS לבחירת שורות ממערך WRAPROWS להמרת מערך חד ממדי לרב ממדי - פריסה לשורות WRAPCOLS כנ"ל - פריסה לעמודות HSTACK ו VSTACK - הפעולה של {} אך בלי סוגריים - לא משמעותי לכאורה והעולה על כולנה, סוף סוף: LET - ליצירת משתנים. כל אלו מצטרפות לפונקציות שנוספו מוקדם יותר - https://blog.sheetgo.com/google-sheets-formulas/10-new-google-sheets-functions/ וכלול בתוכם - LAMBDA, MAP (חלקי - לא עובד לקנן ב MAP ודומיו מערכים אחרים), פונקציות בעלות שם, וכו' ע"ש בקישור.
  • שאלה ב- vsto #C : איך עושים קיצור דרך בוורד לתוסף?

    4
    0 הצבעות
    4 פוסטים
    125 צפיות
    Y
    @pcinfogmach יש אפשרות שבה מפתחי תוספים לוורד משתמשים, אני כותב פה רק את הבסיס של העיקרון, אני לא מול הקוד שעושה את זה, אבל אני יודע שהוא קיים, כי בדקתי אותו פעם הרעיון מבוסס על כך, שבVBA ניתן כידוע להקצות קיצורי מקשים בקוד לפונקציה מסוימת רק אי אפשר בC# ומזה נובע הסיבוך הזה. ולכן העצה מה שעושה, זה עושים קוד VBA שקורא לפונקציות C# הבעיה כמובן שלעשות את זה, צריך לכתוב איזה קוד קצת מרגיז, כאמור אני לא זוכר כרגע את הקוד, אני רק נותן פה כיוון בתקווה להביא איזה תועלת.
  • קוד לבוחר פונטים בשביל C#

    1
    2 הצבעות
    1 פוסטים
    78 צפיות
    אין תגובות
  • 0 הצבעות
    9 פוסטים
    149 צפיות
    pcinfogmachP
    @dovid תודה רבה מאוד עזרת לי
  • שאלה בC#: איך להריץ סקריפט שלא יתקע את התוכנה (windows form).

    6
    0 הצבעות
    6 פוסטים
    212 צפיות
    dovidD
    @Mordechai-0 תשובה מצויינת לאיך לעדכן אחרי, אבל השאלה עסקה בתוך כדי ועל זה נידבת בנ.ב. לכתוב שיש דוגמאות באינטרנט... אם עושים בלי BackgroundWorker אז הדרך היא ככה: progressBar1.Invoke(new Action(() => progressBar1.Value = 52));
  • בקשת עזרה עם קוד בc#

    14
    0 הצבעות
    14 פוסטים
    246 צפיות
    dovidD
    עלות הזמן לא נמדדת בשורות. לקריאה לפונקציה יש עלות מקרוסקופית תיאורטית, תשאיר את זה למדעני טילים. בתכלס מי שמשתמש עם פונקציות הקוד שלו מהיר יותר כי כפועל יוצא הוא פשוט כותב קוד טוב יותר
  • 0 הצבעות
    1 פוסטים
    61 צפיות
    אין תגובות
  • מחפש דרך לקבל בקלות את כל הפרקי תהילים והמשניות שיש

    11
    0 הצבעות
    11 פוסטים
    623 צפיות
    dovidD
    אכן.
  • נושא זה נמחק!

    5
    0 הצבעות
    5 פוסטים
    44 צפיות
  • טעינת נתונים לעמודות קיימות DataGridView

    3
    0 הצבעות
    3 פוסטים
    125 צפיות
    pcinfogmachP
    מדריך בסיסי ל dapper לפשוטי העם (כמוני) https://www.geeksforgeeks.org/c-dapper/
  • איך לעשות הפנייה מחדש ל websocket

    1
    0 הצבעות
    1 פוסטים
    81 צפיות
    אין תגובות
  • אנגולר - תכנון סרוויס

    2
    0 הצבעות
    2 פוסטים
    85 צפיות
    קומפיונטק
    תשובה לשאלה הראשונה: הסרוויס צריך להכיל את כל המידע ולהפיץ אותו בכמה שיטות לקומפוננטות כך שהם יוכלו לקבל אותו באיזה צורה שהם רוצים (מידע קצר / מידע מלא), במקרה שזה ממש הרבה קוד לסרוויס אחד אולי באמת מומלץ לפצל את זה לשני סרוויסים (שמקושרים אחד לשני)
  • המרת טקסט מג'יבריש לעברית

    2
    0 הצבעות
    2 פוסטים
    147 צפיות
    חגיח
    כן. https://www.online-decoder.com/he [image: 1696426261757-7cc57b8b-1850-4158-a10c-0c4da9415b30-image.png] אמנם שאלת בפורום תכנות, אבל לא כתבת שפת תכנות, אז אני מניח שהתכוונת לשאול באופן כללי.
  • 0 הצבעות
    4 פוסטים
    185 צפיות
    Aharon 0A
    תחפור באתר הזה: https://atidcollege.co.il/
  • הנפקת קבלות בתוכנה עצמאית - רשות המיסים

    4
    0 הצבעות
    4 פוסטים
    219 צפיות
    clickoneC
    לפי ההגדרות שלהם אתה צריך לעשות הצהרה עבור הלקוח, או להיות מוגדר כשכיר אצלו (כמו שכתבת) תוכנה שהנישום פיתח בעצמו או באמצעות עובדיו ולא באמצעות גורם חיצוני (outsourcing). אם אתה מצהיר שהוא לקוח בודד, אז אתה לא צריך לממש קובץ אחיד, מה שמוריד את הרוב המוחלט של העבודה
  • נושא זה נמחק!

    6
    0 הצבעות
    6 פוסטים
    76 צפיות
  • 0 הצבעות
    25 פוסטים
    886 צפיות
    dovidD
    כיון שתייגת אותי אענה לך: לא יודע.
  • קיים תחליף טוב לאקסס?

    19
    0 הצבעות
    19 פוסטים
    1k צפיות
    ש
    @ש-ב-ח כתב בקיים תחליף טוב לאקסס?: דווקא אני חושב שכאן יש עתיד: https://bubble.io הסתייגות: לא בדקתי עומס של מליוני שורות בטבלה... אם מישהו בדק ויש לו תובנות שיעדכן...
  • ביצוע פרקטי לאינדוקס מאגר טקסט עברי

    12
    7 הצבעות
    12 פוסטים
    540 צפיות
    dovidD
    @pcinfogmach זה טוב שאתה מאמין בי, אבל אני גם צריך להאמין בך. ציינתי שאת הקוד שלי עם הDapper לא הצלחת להטמיע. מאוד משונה שהמהירות לא השתנתה, זה כמעט לא מציאותי. אני הייתי שמח ללבן איתך יחד את הנושא, פנה אלי במייל.
  • גישה מהמחשב למסד MongoDB בשרת

    25
    0 הצבעות
    25 פוסטים
    1k צפיות
    aaaaA
    @nigun כתב בגישה מהמחשב למסד MongoDB בשרת: @dovid כתב בגישה מהמחשב למסד MongoDB בשרת: @nigun כתב בגישה מהמחשב למסד MongoDB בשרת: הבעיה בVPN שכשאתה מחובר אליו כל התעבורה שלך עוברת דרכו אני משתמש כבר כמה שנים בVPN למקום העבודה, והתעבורה לא עוברת דרך הVPN. איך אתה מגדיר איזה תעבורה תעבור דרך הVPN ואיזה לא? בעיקרון בVPN זה מאוד פשוט. או שכל תעבורת הרשת מנותבת דרך הVPN. או שהVPN יוצר עוד מתאם רשת וירטואלי שפשוט מוסיף עוד טווח כתובות, שהמחשב שלך יכול לתקשר איתם. (בדיוק כמו שרת עם שני כרטיסי רשת)
  • למה אי אפשר לעשות SQL בצורת HASH-TABLE

    6
    1 הצבעות
    6 פוסטים
    192 צפיות
    yossizY
    @Y-Excel-Access לא הצלחתי לעקוב אחרי הלוגיקה שבדבריך, אולי הדברים שלך מבוססים על הנחות סמויות והבנות קודמות שלא ברורים לי לגבי השאלה מה היתרון של אינדקס מבוסס על btree לעומת hash map יש הרבה תוצאות בגוגל על הנושא, ממה שראיתי: HASHMAP יותר מהר בשליפה של רשומה אחת BTREE שימושי לשליפה של טווח של שורות BTREE שימושי למיונים משא"כ HASHMAP
בא תתחבר לדף היומי!