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

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. מאקרו לזיהוי מחזוריות

מאקרו לזיהוי מחזוריות

מתוזמן נעוץ נעול הועבר תכנות
24 פוסטים 4 כותבים 473 צפיות
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • O מנותק
    O מנותק
    one1010
    השיב לone1010 ב נערך לאחרונה על ידי one1010
    #11

    אני כותב את הקוד הבא והוא כותב לי שלא נמצא דפוס.
    במה הטעות?

    Sub FindYellowPattern()
    Dim dataRange As Range
    Dim yellowCells As Range
    Dim cell As Range
    Dim currentCell As Range
    Dim i As Integer
    Dim j As Integer
    Dim k As Integer
    Dim patternFound As Boolean
    Dim minRepetition As Integer
    Dim maxGap As Integer
    Dim numRepetitions As Integer
    Dim repetitionCount As Integer
    Dim lastPatternRow As Integer
    
    
    
    ' Set data range
    Set dataRange = Range("A1:AD12")
    
    ' Set pattern parameters
    minRepetition = 1 ' Minimum number of repetitions
    maxGap = 100 ' Maximum gap between repetitions
    numRepetitions = 3 ' Number of repetitions required for a pattern
    
    ' Loop through each yellow cell
    For Each yellowCells In dataRange.Areas
        ' Loop through each cell in the area
        For Each cell In yellowCells
            ' Check if cell is yellow
            If cell.Interior.Color = vbYellow Then
                ' Check for pattern
                For i = 1 To maxGap
                    ' Check for repetition
                    repetitionCount = 0
                    Set currentCell = cell
                    For j = 1 To numRepetitions
                        Set currentCell = currentCell.Offset(0, i)
                        ' Check if cell is yellow
                        If currentCell.Interior.Color = vbYellow Then
                            repetitionCount = repetitionCount + 1
                            ' Check if current cell is end of pattern
                            If j = numRepetitions And currentCell.Offset(0, i).Interior.Color <> vbYellow Then
                                patternFound = True
                            End If
                        Else
                            Exit For
                        End If
                    Next j
                    ' If pattern found, exit loops
                    If patternFound Then
                        lastPatternRow = currentCell.Row
                        Exit For
                    End If
                Next i
                If patternFound Then Exit For
            End If
        Next cell
        If patternFound Then Exit For
    Next yellowCells
    
    ' Print last row with pattern
    MsgBox "Last row with pattern: " & lastPatternRow
    
    End Sub
    
    
    dovidD תגובה 1 תגובה אחרונה
    0
    • dovidD מחובר
      dovidD מחובר
      dovid ניהול
      השיב לone1010 ב נערך לאחרונה על ידי
      #12

      @one1010
      ראשית כל הקוד שאתה כותב תעטוף בשני שורות עם שלושה טילדות (~~~), ככהאבל בלי הגרשים:

      /~~~
      code
      /~~~

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

      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

      בכל נושא אפשר ליצור קשר dovid@tchumim.com

      O תגובה 1 תגובה אחרונה
      1
      • O מנותק
        O מנותק
        one1010
        השיב לdovid ב נערך לאחרונה על ידי
        #13

        @dovid כתב במאקרו לזיהוי מחזוריות:

        @one1010
        ראשית כל הקוד שאתה כותב תעטוף בשני שורות עם שלושה טילדות (~~~), ככהאבל בלי הגרשים:

        /~~~
        code
        /~~~

        אתה מתכוון לתקן בקוד או כשאני מדביק כאן?

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

        כשאתה אומר הנתונים היו מסודרים בשורות אתה מתכוון כמו בקובץ הבא?חוברת1.xlsm

        dovidD תגובה 1 תגובה אחרונה
        0
        • dovidD מחובר
          dovidD מחובר
          dovid ניהול
          השיב לone1010 ב נערך לאחרונה על ידי
          #14

          @one1010

          1. כן, בשביל שיהיה מעוצב נח לקריאה.
          2. לא, אני מתכוון שכל שורה זה תאריך, ובמקום להסתמך על סימון עיצובי שיהיה מידע בעמודה שליד (B למשל) וכן בתוצאה שמסומן מחזוריות שזה ייכתב לעמודה שכנה (C).
            אישית הייתי מעדיף לעבוד עם שפה מודרנית יותר מVBA לכזה אתגר, אבל אפשר לשרוד בנקודה הזו.

          מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

          בכל נושא אפשר ליצור קשר dovid@tchumim.com

          O תגובה 1 תגובה אחרונה
          1
          • O מנותק
            O מנותק
            one1010
            השיב לdovid ב נערך לאחרונה על ידי
            #15

            @dovid כתב במאקרו לזיהוי מחזוריות:

            @one1010

            1. כן, בשביל שיהיה מעוצב נח לקריאה.

            אוקי

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

            הבעיה היא שאז יהיה מאד מסובך לעבוד עם זה כי זה יהיה הרבה שורות.

            אישית הייתי מעדיף לעבוד עם שפה מודרנית יותר מVBA לכזה אתגר, אבל אפשר לשרוד בנקודה הזו.

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

            dovidD Y.Excel.AccessY 2 תגובות תגובה אחרונה
            0
            • dovidD מחובר
              dovidD מחובר
              dovid ניהול
              השיב לone1010 ב נערך לאחרונה על ידי
              #16

              @one1010 מאה שנה זה רק 35 אלף שורות,
              אקסל עובד עם הרבה יותר שורות בלי למצמץ.

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

              מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

              בכל נושא אפשר ליצור קשר dovid@tchumim.com

              O תגובה 1 תגובה אחרונה
              0
              • O מנותק
                O מנותק
                one1010
                השיב לdovid ב נערך לאחרונה על ידי
                #17

                @dovid כתב במאקרו לזיהוי מחזוריות:

                @one1010 מאה שנה זה רק 35 אלף שורות,
                אקסל עובד עם הרבה יותר שורות בלי למצמץ.

                לא חסתי על האקסל אלא על שימוש נורמלי שלא כל פעם שצריך לשנות צריך לדפדף

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

                איזה שפות נוספות ניתנות לשימוש באקסל?

                dovidD תגובה 1 תגובה אחרונה
                0
                • Y.Excel.AccessY מנותק
                  Y.Excel.AccessY מנותק
                  Y.Excel.Access
                  השיב לone1010 ב נערך לאחרונה על ידי Y.Excel.Access
                  #18

                  @one1010 כתב במאקרו לזיהוי מחזוריות:

                  אישית הייתי מעדיף לעבוד עם שפה מודרנית יותר מVBA לכזה אתגר, אבל אפשר לשרוד בנקודה הזו.

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

                  לצורך שלך, דווקא יצרתי באקסס, וזה די קל שם - לבסס הכל על שאילתות ועל פוקנציה ממירה מתאריך לועזי לעברי ולהיפך.

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

                  אני מכיר מתכנת שבנה יפה מאוד ב C# במשך זמן ממושך של כמה חודשים / שנה, וכלל אפילו נימוקים הלכתיים בטקסט בתוכנה, ונראות וכו' וכו', אבל נתקע כנ"ל.

                  Y.Excel.Access @ gmail.com

                  O dovidD 2 תגובות תגובה אחרונה
                  1
                  • O מנותק
                    O מנותק
                    one1010
                    השיב לY.Excel.Access ב נערך לאחרונה על ידי
                    #19

                    @Y-Excel-Access כתב במאקרו לזיהוי מחזוריות:

                    דווקא יצרתי באקסס

                    אוכל לקבל?

                    Y.Excel.AccessY תגובה 1 תגובה אחרונה
                    0
                    • dovidD מחובר
                      dovidD מחובר
                      dovid ניהול
                      השיב לone1010 ב נערך לאחרונה על ידי
                      #20

                      @one1010 כתב במאקרו לזיהוי מחזוריות:

                      לא חסתי על האקסל אלא על שימוש נורמלי שלא כל פעם שצריך לשנות צריך לדפדף

                      לא קשה לדפדף. זה גם נשאר תמיד פתוח איפה שהיית.

                      אם אתה הולך ללמוד איזה שפת תכנות אומר לך אם זה מתאים לאקסל.

                      מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                      בכל נושא אפשר ליצור קשר dovid@tchumim.com

                      תגובה 1 תגובה אחרונה
                      0
                      • dovidD מחובר
                        dovidD מחובר
                        dovid ניהול
                        השיב לY.Excel.Access ב נערך לאחרונה על ידי
                        #21

                        @Y-Excel-Access כתב במאקרו לזיהוי מחזוריות:

                        אכמ"ל

                        בהחלט, אפילו תערוך מה שכתבת.

                        מנטור אישי למתכנתים (ולא רק) – להתקדם לשלב הבא!

                        בכל נושא אפשר ליצור קשר dovid@tchumim.com

                        Y.Excel.AccessY תגובה 1 תגובה אחרונה
                        2
                        • Y.Excel.AccessY מנותק
                          Y.Excel.AccessY מנותק
                          Y.Excel.Access
                          השיב לone1010 ב נערך לאחרונה על ידי
                          #22

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

                          איך אפשר ליצור איתך קשר?

                          Y.Excel.Access @ gmail.com

                          O תגובה 1 תגובה אחרונה
                          0
                          • Y.Excel.AccessY מנותק
                            Y.Excel.AccessY מנותק
                            Y.Excel.Access
                            השיב לdovid ב נערך לאחרונה על ידי
                            #23

                            @dovid כתב במאקרו לזיהוי מחזוריות:

                            אכמ"ל

                            בהחלט, אפילו תערוך מה שכתבת.

                            מספיק? או למחוק הכל?

                            Y.Excel.Access @ gmail.com

                            תגובה 1 תגובה אחרונה
                            1
                            • O מנותק
                              O מנותק
                              one1010
                              השיב לY.Excel.Access ב נערך לאחרונה על ידי
                              #24

                              @Y-Excel-Access כתב במאקרו לזיהוי מחזוריות:

                              איך אפשר ליצור איתך קשר?

                              יצרתי במייל

                              תגובה 1 תגובה אחרונה
                              0

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

                              • אין לך חשבון עדיין? הרשמה

                              • התחברו או הירשמו כדי לחפש.
                              • פוסט ראשון
                                פוסט אחרון
                              0
                              • דף הבית
                              • קטגוריות
                              • פוסטים אחרונים
                              • משתמשים
                              • חיפוש
                              • חוקי הפורום