:D snasui.com ยินดีต้อนรับ :D
ยินดีต้อนรับสู่กระดานถามตอบ Excel and VBA และอื่น ๆ ที่เป็นมิตรกับทุกท่าน มีไฟล์แนบมหาศาล ช่วยให้ท่านค้นหาและติดตามศึกษาได้โดยง่าย :thup: สมาชิกท่านใดที่ยังไม่ได้ระบุ Version ของ Excel ที่ใช้งานจริง สามารถทำตาม Link นี้เพื่อจะได้รับคำตอบที่ตรงกับ Version ของท่านครับ :arrow: ระบุ Version ของ Excel
:!: โปรดทราบ :!:
  1. กรุณาอ่านกฎการใช้บอร์ด (Forum rules) ในตำแหน่งด้านบนของแต่ละบอร์ด
  2. การสมัครสมาชิก การ Login การกู้คืนรหัสผ่าน
    1. สมัครสมาชิกดูขั้นตอนได้ที่ :arrow: สมัครสมาชิก
    2. Login เข้าระบบโดยคลิกปุ่ม Login ตรงมุมขวาบนของหน้านี้ :roll:
    3. การ Login ผ่าน Facebook ดูวิธีที่ :arrow: Login ผ่าน Facebook
    4. ลืมรหัสผ่านสามารถรับรหัสใหม่ได้ที่ :arrow: Reset รหัสผ่าน
  3. มีปัญหาการใช้งาน แจ้งผู้ดูแลระบบได้ที่ :arrow: ติดต่อผู้ดูแลระบบ
  4. กำหนดการตั้งค่าส่วนตัว เช่นตั้งค่าภาษาเป็นไทยหรืออังกฤษดูได้ที่ :arrow: ตั้งค่าส่วนตัว
  5. การตั้งและตอบกระทู้ดูได้ที่ :arrow: วิธีการตั้งและตอบกระทู้
  6. การจัดรูปแบบตัวอักษรด้วย bbcode ในช่องแสดงความคิดเห็นดูได้ที่ :arrow: จัดรูปแบบตัวอักษร
  7. กำหนดขนาดตัวอักษรใน Browser ดูได้ที่ :arrow: กำหนดขนาดตัวอักษรใน Browser

version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอน)

ฟอรัมถาม-ตอบปัญหาการใช้งาน MS Excel and VBA
Forum rules
  1. ไม่อนุญาตให้ใช้ภาษาแชทในการถามและตอบปัญหา ไม่ใช้คำว่า "คับ" หรือ "อ่ะครับ" แทนคำว่า "ครับ" ไม่ใช้คำว่า "เด๋ว" แทนคำว่า "เดี๋ยว" เป็นต้น เนื่องจากเมื่อแปลเป็นภาษาต่างประเทศแล้วจะให้ความหมายผิดไปจากที่ควรจะเป็น
  2. ห้ามถามโดยระบุชื่อผู้ตอบและต้องตั้งชื่อกระทู้ให้สื่อถึงปัญหาที่จะถาม ไม่ตั้งชื่อว่า ช่วยด้วยครับ, มีปัญหามาปรึกษาครับ เป็นต้น
  3. กรุณาอธิบายปัญหาและระบุคำตอบที่ต้องการมาในกระทู้ด้วยเสมอถึงแม้จะอธิบายไว้ในไฟล์แนบแล้วก็ตาม ทั้งนี้เพื่ออำนวยความสะดวกแก่เพื่อนสมาชิกในการค้นหาข้อมูล
  4. กรุณาแนบไฟล์ตัวอย่างพร้อมแสดงคำตอบที่ถูกต้องมาในไฟล์ด้วยเพื่อให้ง่ายต่อการทำความเข้าใจและสะดวกต่อการตอบคำถาม (ขนาดไฟล์ไม่เกิน 500Kb ขนาดภาพไม่เกิน 800*600 Pixel) ไม่แนบเป็น Link มาจากแหล่งอื่นที่อาจจะถูกลบทิ้งไปโดยต้นทางในภายหลัง นอกจากนี้ไม่ควรแนบไฟล์ที่มีข้อมูลสำคัญอันก่อให้เกิดความเสียหายกับตนเองและผู้อื่น
  5. กรณีเป็นคำถามเกี่ยวกับ Programming เช่น VBA, VB.Net, C#, SQL ฯลฯ ต้องลองเขียนมาเองก่อนเสมอ ถามเฉพาะที่ติดปัญหา ระบุ Module, Procedure ที่ติดปัญหาให้ชัดเจน กรุณาโพสต์ Code ให้แสดงเป็น Code คือเปิดด้วย [code] และปิดด้วย [/code] ตัวอย่างเช่น [code]dim r as range[/code] เพื่อให้แตกต่างจากข้อความทั่วไป สะดวกในการอ่านและทดสอบ (คลิกเพื่อดูตัวอย่าง)
  6. กรุณาแจ้งผลการใช้งานเมื่อได้รับคำตอบว่าตรงกับความต้องการหรือไม่
tstc79tt
Member
Member
Posts: 83
Joined: Tue Nov 13, 2012 4:39 pm

version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอน)

#1

Post by tstc79tt »

[img][img]http://image.ohozaa.com/i/g3f/Nxp4kB.JPG[/img][/img]

คือผมลองๆ หลายวิธีแต่ตอนนี้ผมตันแล้วครับกำลังพยายาม ใช้วิธีเช็ค IP ของอาจารย์ โดยแปลงๆ โค๊ด แต่ผมยังไม่เข้าใจโค๊ดอย่างมาก เลยยังไม่รูจะแปลงตรงไหนใส่อะไร

ซึ่งผมลองๆใช้ Function แต่ดูเหมือนว่ามันไม่เหมาะ(น่าจะครับ หากมีวิธีใดๆชี้แนะด้วยครับ)

ขอรบกวนผู้รู้ให้คำปรึกษาเรื่อง VBA หน่อยครับ

if (Patch name = Pack name) then **** searching for same Name on patch column to reference for patch base and revise number
if (base(c column) > base(h column)) ***checknumber[cellbycell]

display "yes" in J cell

or if (base(C column) = base(h column)) then

check if revise(D column) > revise(I column)

display "yes" in J cell
else display No

ด้านบนคือที่ผมคิดออกมาได้ว่าควรจะเช็คอะไรยังไงให้ได้คำตอบออกมา
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#2

Post by snasui »

:D ลองเขียนเงื่อนไขมาเป็นคำอธิบายเป็นข้อ ๆ แทนการเขียน Code

สำหรับคำปรึกษา VBA ต้องเขียนหรือปรับ Code มาเองก่อน ติดตรงไหนค่อยมาถามกัน ถ้าเขียนหรือปรับไม่เป็นก็ไม่ควรใช้ VBA ครับ
tstc79tt
Member
Member
Posts: 83
Joined: Tue Nov 13, 2012 4:39 pm

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#3

Post by tstc79tt »

ผมได้ไปลองๆ มาครับตามไฟล์ที่แนบมาให้

สิ่งที่ตอนนี้ผมทำไม่ได้และต้องการคำปรึกษาคือ

1.ทำยังไงให้เทียบค้นหาบรรทัดที่ชื่อเหมือนกันมาเพื่อนำข้อมูลในบรรทัดนั้นๆมา ใช้งาน
2.หากมันเป็นจุดทศนิยม 1 หลักมันจะเทียบไม่ได้ครับ ดูได้ในตัวอย่างในไฟล์ แต่หากเป็นหลายๆจุดทศนิยมจะปกติดีครับ
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#4

Post by snasui »

tstc79tt wrote:1.ทำยังไงให้เทียบค้นหาบรรทัดที่ชื่อเหมือนกันมาเพื่อนำข้อมูลในบรรทัดนั้นๆมา ใช้งาน
ค้นจากไหน มาแสดงที่ไหน ด้วยเงื่อนไขใดครับ
tstc79tt wrote:2.หากมันเป็นจุดทศนิยม 1 หลักมันจะเทียบไม่ได้ครับ ดูได้ในตัวอย่างในไฟล์ แต่หากเป็นหลายๆจุดทศนิยมจะปกติดีครับ
ที่เรียกว่าทศนิยมนั้นไม่ถูกต้องครับ ทศนิยมใช้กับตัวเลขหรือ Number ไม่ใช่เลข IP เพราะเลข IP คือ Text ไม่ใช่ตัวเลขครับ

การนำมาเทียบกัน Text จะมากกว่า Number ทุกกรณีครับ
tstc79tt
Member
Member
Posts: 83
Joined: Tue Nov 13, 2012 4:39 pm

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#5

Post by tstc79tt »

ตามไฟล์ที่แนบมาก็

เช่นครับ

ที่ตัว Patch

มีข้อมูลมาว่า

aaa 1.7.2.1
bbb 2.8.3
ccc 1.6

ส่วนใน Pack หรือข้อมูลเก่าของเรา

aaa 1.7.3
aaa 1.6.1.2
bbb 2.7.11
ccc 1.3.2
bbb 1.7.1.2

หากเป็น aaa ก็ให้นำไปเทียบกับ aaa ประมาณนี้ครับ

แล้วก็มีวีธีทำให้มันเช็คด้วยกันได้ไหมครับระหว่าง เช่นที่เป็น 1.1 กับ 1.1.1
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#6

Post by snasui »

:lol: ช่วยอธิบายโดยอ้างถึงชีท อ้างถึงเซลล์ครับ จะได้เข้าถึงข้อมูลได้โดยไว

ปัญหาคืออะไร ต้องการคำตอบเป็นอย่างไร ช่วยแสดงคำตอบเป็นตัวอย่างไว้ด้วยว่าที่ถูกต้องนั้นจะต้องได้ค่าใด
tstc79tt wrote:แล้วก็มีวีธีทำให้มันเช็คด้วยกันได้ไหมครับระหว่าง เช่นที่เป็น 1.1 กับ 1.1.1
การจะนำมาเปรียบเทียบกันได้จะต้องกำหนด Format 1.1 ให้เป็น Text ครับ
tstc79tt
Member
Member
Posts: 83
Joined: Tue Nov 13, 2012 4:39 pm

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#7

Post by tstc79tt »

โอเคครับ ผมอธิบายเป็นคำพูดให้ภาพยากน่ะครับ ผมทำไฟล์พร้อมเขียนปัญหา ในไฟล์ที่ผมแนบได้เขียนอธิบายปัญหาที่ผมเจอทุกอย่างตอนนี้ครับ รวมทั้งคำตอบที่ควรจะถูกด้วยครับ


ปัญหาคือ ตอนนี้ ผมอยากรู้ฟังชั่นที่ ทำให้มัน เลือกเช็คเฉพาะ ตัวที่ ชื่อเหมือนกัน เช่น aaa ของ Pack ก็ให้ เช็ค กับ aaa ของ Patch
และก็อีกอย่างคือ 1.33 เมื่อเทียบกับ 1.3.3 มันจะขึ้นให้ 1.3.3 มากกว่าตลอด ผมได้ลองเปลี่ยนเป็น text ก็ยังขึ้นเหมือนเดิมไม่รู้ว่าผมทำถูกวิธีไหม

โดยจะเช็คจากชื่อ เมื่อชื่อเหมือนกันให้ทำการเช็ค base หากของpatchมากกว่าตอบ yes หาก base เท่ากัน ให้ ไปเช็ค revise หาก revise patch มากกว่า ตอบ yes
You do not have the required permissions to view the files attached to this post.
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#8

Post by snasui »

:D ตราบใดที่คุณ tstc79tt ไม่เขียนอ้างอิงเซลล์ ผู้ที่ตอบจะลำบากในการเข้าถึงข้อมูลครับ

ตัวอย่างการอธิบายควรจะอธิบายลักษณะนี้

ในชีท Sheet1 ที่เซลล์ J2 ต้องการคำตอบโดยมีเงื่อนไขว่า

หาก G2 มีค่าเท่ากับ A2 แล้ว ให้ตรวจสอบว่า H2 น้อยกว่า C2 หรือไม่

ถ้าไม่ใช่ ให้ J2 เป็น No ถ้าใช่ ให้ J2 เป็น Yes

ฯลฯ

ที่บรรยายมานั้นหากนำการอ้างอิงเซลล์เข้าไปด้วยจะทำให้เข้าใจได้เลย และสูตรที่เขียนมาผมและเพื่อน ๆ สามารถตรวจสอบให้ได้ว่า เขียนตรวจสอบเงื่อนไขได้ครบถ้วนแล้วหรือไม่

ผมไม่ดูว่าเขียนสูตรมาอย่างไร แต่จะดูว่าเงื่อนไขเป็นอย่างไร ต้องการคำตอบเป็นอย่างไรก่อน ถึงจะช่วยดูให้ได้ว่าต้องปรับสูตรอย่างไร
tstc79tt
Member
Member
Posts: 83
Joined: Tue Nov 13, 2012 4:39 pm

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#9

Post by tstc79tt »

อ้อออครับๆๆ ก็

เช็คที่ คำตอบอยู่ที่เซล J

sheet ที่ 1 ครับ

จาก G2 เช็คว่าเหมือนกันกับ column A ตัวใดไหม
หากเหมือนกัน ให้ไปที่ H2 ว่าน้อยกว่า column C ที่อยู่ rowเดียวกับกับที่ G2 เจอ หาก น้อยกว่า ตอบ yes ที่ J

หาก H2=C? ให้ไปที่ column I เช็คว่า น้อกว่า column D ที่อยู่ Row เดียวกันกับG2 เจอ หากน้อยกว่า ตอบ yes ที่ J

นอกนั้น No ครับ

:)
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#10

Post by snasui »

:D ลองดูตัวอย่างตามไฟล์แนบครับ

คอลัมน์ K:L ใช้สูตร Vlookup ดึงข้อมูล Version กับ Revise ที่ตรงกับ ค่าในคอลัมน์ G ขึ้นมาก่อน จากนั้นค่อยเขียนสูตรที่คอลัมน์ J
You do not have the required permissions to view the files attached to this post.
tstc79tt
Member
Member
Posts: 83
Joined: Tue Nov 13, 2012 4:39 pm

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#11

Post by tstc79tt »

=IF(H2<K2,"Yes",IF(AND(H2=L2,I2<L2),"Yes","No"))

มีคำถามครับ ทำไม ตรงนี้ไม่เป็น H2=K2 หละครับ ในเมื่อต้องการแค่เช็คว่า base เท่ากันหรือไม่ แต่ดันเป็นไปเช็คกับอีกอันแล้วคำตอบดันถูกหละครับ :D งง
User avatar
snasui
Site Admin
Site Admin
Posts: 30919
Joined: Sun Jan 24, 2010 12:33 pm
Location: Songkhla, Thailand
Excel Ver: 2010, 365
Contact:

Re: version check แบบหลายเงื่อนไข(คล้าย IP แต่ทศนิยมไม่แน่นอ

#12

Post by snasui »

:D ลองทำความเข้าใจว่า H2 คืออะไร L2 คืออะไร เป็นไปตามเงื่อนไขหรือไม่ จะได้เข้าใจเพิ่มขึ้นครับ
Post Reply