למומחים באקסל

moishy

משתמש סופר מקצוען
מנוי פרימיום
על בסיס הצעת ידידנו a26955 עם מעט שיפורים (בין השאר אנטר מספיק):
קוד:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim strValue As String
    strValue = Target.Value
    
    If Not IsNumeric(strValue) Then Exit Sub
    
    If strValue >= 1 And strValue <= 34 Then
        If MsgBox("האם להחליף את המספר בטקסט?", vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading) = vbYes Then
            Target = Application.VLookup(Target.Value, Sheets("משפטים").Range("A1:B34"), 2, False)
        End If
    End If
End Sub
 

ח. שושני

משתמש מקצוען
עיצוב גרפי
נכתב ע"י moishy;2457819:
על בסיס הצעת ידידנו a26955 עם מעט שיפורים (בין השאר אנטר מספיק):
קוד:
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim strValue As String
    strValue = Target.Value
    
    If Not IsNumeric(strValue) Then Exit Sub
    
    If strValue >= 1 And strValue <= 34 Then
        If MsgBox("האם להחליף את המספר בטקסט?", vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading) = vbYes Then
            Target = Application.VLookup(Target.Value, Sheets("משפטים").Range("A1:B34"), 2, False)
        End If
    End If
End Sub


איפה שמים את הקוד הזה? ומתי? אחרי הקלדת כל מספר או שאפשר בסוף ההקלדה לבחור את הכל?

אפשר הסבר קצרצר?...
תודה!!
 

FullTime

משתמש מקצוען
1. להעתיק את הקוד מכאן.
2. ללחוץ באקסל אלט + F11
להיכנס לגליון 2 נתונים בחלון שבצד שמאל
3. בשורה שכתוב עכשיו call macro1
להדביק את ההעתקה..

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



קוד:
    Dim strValue As String
    strValue = Target.Value
    
    If Not IsNumeric(strValue) Then Exit Sub
    
    If strValue >= 1 And strValue <= 200 Then
        If MsgBox("האם להחליף את המספר בטקסט?", vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading) = vbYes Then
            Target = Application.VLookup(Target.Value, Sheets("משפטים").Range("A1:B200"), 2, False)
        End If
    End If
 

ח. שושני

משתמש מקצוען
עיצוב גרפי
נכתב ע"י a26955;2457879:
במקום הסברים.

ללחוץ אלט + F11
איפה שמסומן בתמונה הרצו"ב בצהוב להחליף ל 200

כן, רק איפה לשים את הקוד ומתי?
תודה רבה מאד!!
 

moishy

משתמש סופר מקצוען
מנוי פרימיום
1. ללחוץ אלט (השמאלי)+F11, להדביק את הקוד בחלון שנפתח.
2. לשנות את טווח המשפטים יש לשנות במקום:
קוד:
Sheets("משפטים").Range("A1:B34")
את שם הגיליון והטווח הרצוייים.
כמו"כ יש לשנות את מספרי השורות בשורה זו:
קוד:
If strValue >= 1 And strValue <= 34 Then
לשקף את השורות המכילות את המשפטים בפועל.
3. הקוד הנ"ל עובד בעת ההקלדה בלבד (בעצם ביציאה מהתא).
4. ניתן למנוע את השאלה (המטרידה): האם להחליף את המספר בטקסט?
ע"י הסרת השורה המתחילה עם If MsgBox והסרת השורה המתחילה עם End If (הראשונה בלבד)
5. להפעלת הקוד על טווח מסויים לאחר שכבר הוקלדו המספרים, ניתן להשתמש עם הקוד הבא:
קוד:
Public Sub Demo()

    Dim rng As Range, cell As Range
    Dim strValue As String

    Set rng = Selection.Range

    For Each cell In rng.Cells
        strValue = cell.Value
        
        If Not IsNumeric(strValue) Then Exit Sub
        
        If strValue >= 1 And strValue <= 34 Then
            If MsgBox("האם להחליף את המספר בטקסט?", vbYesNo + vbMsgBoxRight + vbMsgBoxRtlReading) = vbYes Then
                cell.Value = Application.VLookup(Target.Value, Sheets("משפטים").Range("A1:B34"), 2, False)
            End If
        End If
    Next

End Sub
 

ח. שושני

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

moishy

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

ח. שושני

משתמש מקצוען
עיצוב גרפי
תודה לכולם על המאמצים!

אשמח לקבל קישורים לחומרי למידה בנושא...
אני לא יודעת אפילו מה לחפש.
 

אולי מעניין אותך גם...

הפרק היומי

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


תהילים פרק קלב

א שִׁיר הַמַּעֲלוֹת זְכוֹר יְהוָה לְדָוִד אֵת כָּל עֻנּוֹתוֹ:ב אֲשֶׁר נִשְׁבַּע לַיהוָה נָדַר לַאֲבִיר יַעֲקֹב:ג אִם אָבֹא בְּאֹהֶל בֵּיתִי אִם אֶעֱלֶה עַל עֶרֶשׂ יְצוּעָי:ד אִם אֶתֵּן שְׁנַת לְעֵינָי לְעַפְעַפַּי תְּנוּמָה:ה עַד אֶמְצָא מָקוֹם לַיהוָה מִשְׁכָּנוֹת לַאֲבִיר יַעֲקֹב:ו הִנֵּה שְׁמַעֲנוּהָ בְאֶפְרָתָה מְצָאנוּהָ בִּשְׂדֵי יָעַר:ז נָבוֹאָה לְמִשְׁכְּנוֹתָיו נִשְׁתַּחֲוֶה לַהֲדֹם רַגְלָיו:ח קוּמָה יְהוָה לִמְנוּחָתֶךָ אַתָּה וַאֲרוֹן עֻזֶּךָ:ט כֹּהֲנֶיךָ יִלְבְּשׁוּ צֶדֶק וַחֲסִידֶיךָ יְרַנֵּנוּ:י בַּעֲבוּר דָּוִד עַבְדֶּךָ אַל תָּשֵׁב פְּנֵי מְשִׁיחֶךָ:יא נִשְׁבַּע יְהוָה לְדָוִד אֱמֶת לֹא יָשׁוּב מִמֶּנָּה מִפְּרִי בִטְנְךָ אָשִׁית לְכִסֵּא לָךְ:יב אִם יִשְׁמְרוּ בָנֶיךָ בְּרִיתִי וְעֵדֹתִי זוֹ אֲלַמְּדֵם גַּם בְּנֵיהֶם עֲדֵי עַד יֵשְׁבוּ לְכִסֵּא לָךְ:יג כִּי בָחַר יְהוָה בְּצִיּוֹן אִוָּהּ לְמוֹשָׁב לוֹ:יד זֹאת מְנוּחָתִי עֲדֵי עַד פֹּה אֵשֵׁב כִּי אִוִּתִיהָ:טו צֵידָהּ בָּרֵךְ אֲבָרֵךְ אֶבְיוֹנֶיהָ אַשְׂבִּיעַ לָחֶם:טז וְכֹהֲנֶיהָ אַלְבִּישׁ יֶשַׁע וַחֲסִידֶיהָ רַנֵּן יְרַנֵּנוּ:יז שָׁם אַצְמִיחַ קֶרֶן לְדָוִד עָרַכְתִּי נֵר לִמְשִׁיחִי:יח אוֹיְבָיו אַלְבִּישׁ בֹּשֶׁת וְעָלָיו יָצִיץ נִזְרוֹ:
נקרא  32  פעמים

אתגר AI

תקווה לעתיד טוב יותר • אתגר 17

לוח מודעות

למעלה