דילוג לתוכן

תכנות

4.6k נושאים 38.1k פוסטים

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


  • 22 נושאים
    137 פוסטים
    katzK

    שלום לכולם
    התבקשתי רבות מחברים פיתרון לבעיה הידועה לבצע מיזוג דואר, אך לשמור קובץ PDF נפרד לכל רשומה, עם שם מותאם אישית.

    אפרט כאן במדריך שלב אחר שלב איך לבצע זאת, תהיו איתי עד הסוף מקווה שתהנו...

    נתחיל...

    שלב א:

    ראשית בקובץ ה- Excel של רשימת הנמענים, הוסיפו לטבלת הנתונים ארבעה עמודות בשמות כדלהלן (חשוב שהשמות יהיו מדויקים ללא רווחים מיותרים - לתשומת ליבכם):

    DocFolderPath

    DocFileName

    PdfFolderPath

    PdfFileName

    שלב ב:
    צרו שתי תיקיות נפרדות, אחד לקבצי הפלט בפורמט docx, ואחד לקבצי הקלט בפורמט pdf, העתיקו את נתיב התיקייה של קבצי ה- docx והדביקו אותם עבור כל רשומה בשדה שיצרתם בשם DocFolderPath, לאחמ"כ חזרו על הפעולה והפעם העתיקו את נתיב התיקייה של קובצי ה- PDF והדביקו בשדה PdfFolderPath.
    בשדה DocFileName כתבו את השם של הקובץ עבור הרשומה - ניתן להשתמש בנוסחאות, כמו"כ בשדה PdfFileName כתבו את שם הקובץ כנ"ל.

    שלב ג:
    פתחו את קובץ ה- word והשלימו את פעולת המיזוג כרגיל, עצבו את המסמך כרצונכם.

    שלב ד:
    פתחו את לשונית מפתחים בקובץ ה- word פתחו את עורך הקוד הוסיפו מודל חדש מצו"ב צילום מסך:
    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 ולחצו הפעל מצו"ב צילום מסך
    3890ce69-c0e9-4f30-89ce-3e97b7de750b-image.png

    כעת שבו בנחת והמתינו עד ליצירת כל הקבצים, להנאתכם תפתחו את תיקיות הפלט שיצרתם וגלו שהיא מלאה קבצים קובץ לכל רשומה בשם המתאים שהגדרתם לה.

    מקור

  • ארכיון האתר הקודם והחביב קוד-613

    1k נושאים
    10k פוסטים
    chagoldC

    @אבי אמר בשוב, צילומי הצ'קים בבנקים:

    התעסקתי לאחרונה עם סורקים של חברת MAGTEK, הם ידידותיים ונוחים להתממשקות, אבל כמדומני שהבנקים בישראל מוכנים לקבל סריקות רק מסורקים של חברת PANINI

    @אבי איך יוצרים אתך קשר?

  • 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 ודומיו מערכים אחרים), פונקציות בעלות שם, וכו' ע"ש בקישור.

  • איך להסיר ניקוד וטעמים מטקסט בc#

    6
    1 הצבעות
    6 פוסטים
    283 צפיות
    Aharon 0A

    @dovid זה דוגמא לבדיקה לא נכונה של ביצועים.
    אני מקליד מסמארטפון ולכן קשה לי להרחיב, אנסה לתמצת:
    בקריאה לפונקציות מסוימות נדרש לפעמים למערכת הפעלה זמן דרישה להקצות משאבים.
    ולכן לא מסתכלים על זמן ריצה כולל אלא זמן הקצאה + זמן עיבוד, וההפרש בא לביטוי בעיקר בעבודה עם כמות דאטה ענקית. ולכן בדיקה נכונה של ביצועים מתבצע עם כמות דאטא קטנה וכמות דאטה ענקית (לדוגמא: ניקוד של כל התנ"ך...) ואז מעניין יהיה לראות שחלק מהפונקציות מהירות בדאטא קטן וחלק בדאטא גדול, בפוריקט מסוים בדקתי גודל של דאטא ובהתאם לכך את הפונקציה המהירה לאותה כמות.

  • 0 הצבעות
    4 פוסטים
    169 צפיות
    צדיק תמיםצ

    @mekev כתב בmssql - איך לנהל/לרשום 'זיהוי לקבוצת רשומות' בצורה נכונה:

    השתמשתי בUUID (כאמור צד שרת: node.js)

    כמו שכתוב בדף הספריה, אתה יכול להשתמש ב crypto.randomUUID שמובנה בnodejs

  • 5 הצבעות
    1 פוסטים
    97 צפיות
    אין תגובות
  • 0 הצבעות
    3 פוסטים
    323 צפיות
    איש ימיניא

    עכשיו היה לי צורך לעשות כזו בדיקה ב php אם לשלוח צינתוק אוטומטי, או האם אסור כעת.
    לא מצאתי משהו קל לשילוב בקוד שלי, לכת כתבתי משהו לבד.
    השתמשתי עם ה API של Hebcal,
    הפונקציה בודקת אם היום שבת או חג, ואם כן האם עבר זמן הבדלה או לא.
    אם היום לא שבת או חג, יש בדיקה אם עבר זמן הדלקת הנרות (אם יש) או לא עבר.
    עקב כך שבמערכת שלי יש אנשים בכל הארץ, הגדרתי זמנים לפי ירושלים, עם הגדרת הדלקת הנרות 59 דקות לפני השקיעה, והבדלה 90 דקות אחרי השקיעה, כך זה יכסה לי את כל הארץ.
    להלן הקוד:

    echo IsPermissibleSendTsintok(); function IsPermissibleSendTsintok(){ //בדיקת זמני היום, האם מותר הלכתית לשלוח צינתוק $YYYY = date('Y'); $MM = date('m'); $DD = date('d'); /* * לבדיקות $YYYY = $_REQUEST['YYYY']; $MM = $_REQUEST['MM']; $DD = $_REQUEST['DD']; */ $json = file_get_contents('https://www.hebcal.com/hebcal?v=1&cfg=json&geo=geoname&geonameid=281184&start='.$YYYY.'-'.$MM.'-'.$DD.'&end='.$YYYY.'-'.$MM.'-'.$DD.'&maj=on&s=on&leyning=off&b=59&m=90'); $json = json_decode($json, true); /* * לבדיקות echo "<pre>"; print_r($json); echo "</pre>"; */ $items = $json['items']; //אם יש ערך במערך if(count($items) > 0){ foreach ($items as $item) { if ($item['category'] == 'candles') { $candles = explode( "T", $item['date']); $candlesDate = $candles[0]; $candlesTime = explode( "+", $candles[1])[0]; } if ($item['category'] == 'havdalah') { $havdalah = explode( "T", $item['date']); $havdalahDate = $havdalah[0]; $havdalahTime = explode( "+", $havdalah[1])[0]; } } if($items[0]['category'] == 'parashat'){ //בדוק אם כבר עבר זמן havdalah if(strtotime($havdalahDate." ".$havdalahTime) < strtotime(date('Y-m-d H:i:s'))){ return "מותר לשלוח צינתוק"; }else{ exit('אסור לשלוח צינתוק'); } }elseif ($items[0]['yomtov'] == '1'){ if(strtotime($havdalahDate." ".$havdalahTime) < strtotime(date('Y-m-d H:i:s'))){ return "מותר לשלוח צינתוק"; }else{ exit('אסור לשלוח צינתוק'); } }else{ //בדוק אם כבר עבר זמן נרות if(strtotime($candlesDate." ".$candlesTime) < strtotime(date('Y-m-d H:i:s'))){ exit('אסור לשלוח צינתוק'); }else{ return "מותר לשלוח צינתוק"; } } } return "מותר לשלוח צינתוק"; }
  • 1 הצבעות
    9 פוסטים
    546 צפיות
    צדיק תמיםצ

    @mekev כתב בmssql - התייעצות כיצד לשמור שינויי עריכה בטבלאות:

    צא ולמד...
    שאפילו נתון שכזה הם שומרים
    (הגיוני לבדוק שהסיסמא החדשה לא זהה לנוכחית, אבל סיסמא לפני חמש שנים?)

    זה שמירה מסוג אחר לגמרי, אני בטוח שהם לא בודקים בטבלה כלשהיא של היסטוריית שינויים או גרסאות קודמות אלא שומרים באופן מפורש את הישנות

  • 1 הצבעות
    3 פוסטים
    366 צפיות
    M

    @מנחם כתב בשליחת טקסט מודגש / מעוצב בשורת הנושא בגימייל:

    דרך נוספת

    זה אותה דרך
    זה גם עובד עם יוניקוד
    אבל ממש מגניב
    ותודה על השיתוף!

  • interval של JS מתעצל במלאכתו

    6
    0 הצבעות
    6 פוסטים
    662 צפיות
    שלום עולם 0ש

    @yossiz כתב בinterval של JS מתעצל במלאכתו:

    נראה לי שעיקר מה שנוגע אליך זה שהדפדפן עלול להשבית את הinterval אם הכרטיסייה לא פעילה

    כבר רשמתי את הדף ברשימת הדפים שאין להשביתם, והבעיה נשארה עד שעשיתי כנ"ל.

  • הצבה נכונה של טווחי מספרים

    2
    0 הצבעות
    2 פוסטים
    309 צפיות
    ל

    אם הטווחים ניתנים לחישוב כפונקציה של ערכי האיבר והחודש, אין צורך ביצירת מערכים.
    אם לא, אכן, אין מנוס.
    (ואין צריך לומר, ומן הסתם לזה התכוונת, שלא צריך לכתוב במפורש את כל ימי הטווחים; מספיקים הראשון והאחרון של כל טווח).

  • התייעצות ברכישת דומיין

    19
    1 הצבעות
    19 פוסטים
    2k צפיות
    Y

    @yossiz כתב בהתייעצות ברכישת דומיין:

    @yoel3 אם אתה מדבר כבר על הנושא, לא כל הסיומות שווים לטובה: יש כאלו ששייכים לחברות עמומות ומגיעים עם תנאי שימוש מוזרים, לא עשיתי שיעורי בית על הנושא אז לא אכתוב פרטים, אבל זכור לי סיפורים מוזרים בחדשות על סיומות מסויימים (יש אחד שאוסר על בעל הדומיין לפרסם דברים נגד justin beiber אאל"ט)

    נכון
    לכן עדיף סיומות ציבוריות יחסית
    יש לי סיומת מסויימת של מדינה באירופה והם מחייבים אזרחות באירופה
    יש ארצות שמחייבות סימן מסחרי רשום וכו

    COM ושל ארצות נורמליות לענ"ד עדיף מאשר חברה מסחרית כמו OVH שעלולה לחסום לי את החשבון כולו על ספאם / זכויות יוצרים / האקינג או כל דבר שיחליטו להאשים אותי בו

  • 0 הצבעות
    4 פוסטים
    674 צפיות
    A

    אפשר להשתמש ב Firefox - תרגום לעברית עם ראות טובה יותר.

  • ספרית tensorflow

    6
    0 הצבעות
    6 פוסטים
    395 צפיות
    WheneverW

    @שרה-רחל כתב בספרית tensorflow:

    הבעיה שאני לא מבינה איך להתאים את המימדים

    זה כבר נשגב מבינתי:)

    עכשיו זה הזמן לבדוק איפה ה EarlyStopping שלך וכמה פעמים תנסי עד שזה עובד:)

  • שינוי רגולציית תצוגה במחשב ללא צג

    6
    0 הצבעות
    6 פוסטים
    518 צפיות
    yossizY

    @mekev עיין עוד: https://tchumim.com/topic/7494
    (ו-https://tchumim.com/topic/13493)

  • מחפש מדריך TS

    10
    0 הצבעות
    10 פוסטים
    1k צפיות
    צדיק תמיםצ

    @Y-Excel-Access כתב במחפש מדריך TS:

    ראיתי את מדיניות הפרטיות של התוסף שהוא טוען שהוא לא אוסף שום מידע עלי, אא"כ...

    איפה אתה רואה את זה?
    אתה מתכוון לזה?
    634e6e37-2ecb-4e31-bba5-caf3fc65213a-CleanShot 2024-06-17 at 14.11.21@2x.png
    זה ניסוח גנרי של גוגל לדרישות הבסיס בחנות, מעבר להצהרה של המפתח... תראה בשורה הראשונה, "המפַתח מסר שהוא לא יאסוף את הנתונים שלך ולא ישתמש בהם" ובמדיניות הפרטיות שמקושרת שם. ואל תשכח שזה קוד פתוח.
    יש עוד תוספים להזרקת CSS (ואפשר גם לעשות את זה ידנית בdevtools אבל זה לא נוח), אבל על כל תוסף שבחנות כרום זה יהיה כתוב כך שאין טעם לחפש אחר 😀

  • FolderPicker מתקדם ב-C#

    7
    0 הצבעות
    7 פוסטים
    351 צפיות
    אבייא

    @pcinfogmach

    אגב, תוכל להשתמש גם בספריה הזו https://github.com/ookii-dialogs/ookii-dialogs-wpf

    אבל כפי שכבר כתבו, זה לא ממש רלוונטי לפרויקטים חדשים..

  • בדיקת אתר שלא עובד טוב בטלפון

    נעול
    3
    0 הצבעות
    3 פוסטים
    371 צפיות
    sholomS

    כשניסיתי לדמות סמארטפון בדפדפן זה עבד טוב, אך הפריסה לא היתה כ"כ טובה
    ובהסרטת המסף שהלקוח שלח לי זה עוד יותר גרוע.
    אם מישהו רוצה לבדוק את העניין בתשלום שיצור אתי קשר

  • 0 הצבעות
    1 פוסטים
    136 צפיות
    אין תגובות
  • 0 הצבעות
    2 פוסטים
    175 צפיות
    dovidD

    @pcinfogmach הוא עבד מצויין, אבל רק מתי שתיבת הטקסט איבדה פוקוס.
    אתה רצית עדכון מיידי, ובשביל זה עוזרת ההגדרה שעשית.

  • JS המתנה עד שערך ישתנה

    10
    0 הצבעות
    10 פוסטים
    500 צפיות
    ח

    לא מספיק הבנתי את הרקע.
    אבל אולי יתאים לך להשתמש עם watch על האובייקט הנמצא ב store?

  • 0 הצבעות
    26 פוסטים
    856 צפיות
    ש

    @Aharon-0 לא הבנתי, הוא לא מתחבר למזגן עם WIFI?

    @Aharon-0 כתב באיך שולטים על מזגן תדיראן באמצעות Home Assistant‬ (או דבר אחר יותר טוב)?:

    השבב wifi מתחבר עם usb

    צריך לפתוח ולראות אם יש שם חור USB? אף פעם לא עבדתי עם החלקים האלו...

  • 0 הצבעות
    3 פוסטים
    177 צפיות
    ד

    אבל כמו ש @פרדס כתב כאן, לא תמיד זה עובד, אפילו שהוספתי True בסוף הפקודה...
    משאלה במודל AI, קיבלתי תשובה שניתן להשתמש בAutoHotkey, אשמח לעזרת מי שמבין ויודע כיצד ניתן לעשות זאת.

    תודה רבה!!!

בא תתחבר לדף היומי!