เพื่อมุ่งให้เกิดคุณภาพจากการอบรมสูงสุด Excel Expert Training ให้การอบรม Excel กลุ่มเล็กๆ ไม่เกิน 6 คนทุกคนสามารถเรียนรู้ Excel อย่างใกล้ชิด จะมาคนเดียวหรือมาเป็นกลุ่มแล้วนัดวันอบรมแบบส่วนตัวก็ได้ ผู้เข้าอบรมทุกคนสามารถติดตามเนื้อหาที่อบรมได้อย่างชัดเจนจากจอภาพด้านหน้าของตัวเอง
Results 1 to 9 of 9

Thread: ถาม-การใส่สีพื้นหลังเซลล์ตามเงื่อนไขครับ

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    [D]arkspirit
    Guest

    ถาม-การใส่สีพื้นหลังเซลล์ตามเงื่อนไขครับ

    เงื่อนไข คือ 1.ถ้าแผนและผลไม่ตรงกันให้ใส่สีเตือนไว้ทั้งในช่องแผนและผล คือลองใช่สูตร Interior.ColorIndex แล้วแต่ไม่สำเร็จคือในเงื่อนไขเดียวมันไม่ขึ้นสีเตือนทั้งแผนและผลครับ มันขึ้นได้อันเดียว 2.ให้วน Loop ดูจากในช่อง "ลำดับที่" ถ้าไม่มีให้หยุด Loopรบกวนฝากดูด้วยครับ ขอบคุณมากครับ

  2. #2
    อรวีร์
    Guest

    Smile

    ดูเหมือนคุณจะถามแบบ VBA แต่เนื่องจากคุณไม่ได้ส่งโปรแกรมเดิมมาให้ดูด้วยว่าทดลองทำเองไปแค่ไหน อย่างไร
    อรวีร์เลยส่งมาให้เป็นแบบใช้ Conditional Format ซึ่งเป็นวิธีที่ดีกว่า เนื่องจากเมื่อเพิ่มเติม เปลี่ยนแปลงค่า จะได้ผลใหม่ตามค่านั้นๆทันที ไม่ต้องไป Run Code ใหม่

  3. #3
    อรวีร์
    Guest

    Smile

    ถ้าเป็น VBA ก็แบบนี้ค่ะ
    Code:
    Range("D3").Select
    With Columns("D:G")
        .FormatConditions.Delete
        .FormatConditions.Add Type:=xlExpression, _
            Formula1:="=IF(MOD(FLOOR(ROW()+2,5)-ROW(),2)=0," & _
            "AND(D3<>D4,COUNTA(D3:D4)=2)," & _
            "AND(D2<>D3,COUNTA(D2:D3)=2))"
        .FormatConditions(1).Interior.ColorIndex = 36
    End With

  4. #4
    [D]arkspirit
    Guest

    ขอบคุณมากครับ

    ขอบคุณมากครับคุณ อรวีร์

    แต่ขออีกสักนิดได้มั้ยครับ คือผมไม่เข้าใจสูตรเลย
    ปกติผมใช้แต่ if else เลยเอาใช้ในงานจริงผมไม่ได้

    Range("D3").Select >> อันนี้คือให้กดช่อง "D3" ใช้รึเปล่าครับ
    With Columns("D:G") >> ให้เริ่มทำตั้งแต่ D ถึง G
    .FormatConditions.Delete >> ให้ลบ FormatConditions เก่าทิ้ง
    .FormatConditions.Add Type:=xlExpression, _ >> อันนี้ไม่เข้าใจครับ
    Formula1:="=IF(MOD(FLOOR(ROW()+2,5)-ROW(),2)=0," & _ >> อันนี้งงไปเลย
    "AND(D3<>D4,COUNTA(D34)=2)," & _ >> ไม่เข้าใจอีกละครับ
    "AND(D2<>D3,COUNTA(D23)=2))" >> ไม่เข้าใจ
    .FormatConditions(1).Interior.ColorIndex = 36 >> ถ้าใช้ให้ใส่สีเหลืองอ่อน
    End With >> ปิด With
    กรุณาช่วยอธิบายเพิ่มเติมอีกสักนิดได้มั้ยครับ
    ขอบคุณมากครับ

  5. #5
    อรวีร์
    Guest

    Smile

    อธิบายไม่ไหวค่ะ เพราะไม่ทราบว่าคุณใช้ Excel ได้แล้วเท่าใด Function ภายใน Excel ที่ใช้ในสูตรเหล่านี้ คุณเคยใช้หรือไม่
    Mod( ), Floor( ), Row( ), CountA( )

    และคุณเคยกำหนด Conditional Formatting หรือไม่

    ถ้าสิ่งที่กล่าวมาข้างบนคุณยังไม่เคยใช้หรือไม่คุ้นเคย ลองหาความรู้จากใน web ของอาจารย์นี้ดูก่อนค่ะ
    แต่ถ้าคุณรู้วิธีใช้สูตรข้างบนทั้งหมดแล้ว ก็แจ้งมาค่ะ อรวีร์จะอธิบายเสริมเฉพาะในสูตรที่อรวีร์ใช้กับโจทย์นี้

  6. #6
    [D]arkspirit
    Guest
    ต้องขอโทษด้วยครับอาจจะถามมากไปนิด

    ผมสามารถใช้ Conditional Formatting แก้โจทย์ของผมได้ครับ
    แต่ทางหัวหน้าต้องการเป็น VB ก็เลยหัดเขียนดู
    ก็พอดีแปลกใจว่าสามารถนำ code ของ excel มาใส่ลงใน vb ได้
    FormatConditions.Add Type:=xlExpression พึ่งเคยเห็นครับ
    ส่วนคำสั่ง Mod( ), Floor( ), Row( ), CountA( )
    มีคำสั่ง Floor( ) อันเดียวที่ผมยังไม่เข้าใจ รู้มาว่าไว้ปัดเศษลงแต่ยังใช้ไม่เป็นครับ
    แต่ที่ไม่เข้าใจคือ " & _ >> มันไว้ทำอะไรครับ
    แล้วก็แปลกใจในแนวคิดในการใช้ funtion หลายๆตัวมาประยุกใช้ได้อย่างดี
    จะขอเก็บการประยุกสูตรไว้เป็นความรู้ครับ

    ขอบคุณมากครับ

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •