Page 1 of 1

ต้องการหาข้อมูลที่มีค่าน้อยที่สุด

Posted: Fri Feb 20, 2015 1:34 pm
by setsunatop
รบกวนหน่อยครับ คือผมต้องการให้โปรแกรมหาข้อมูลของพนักงานที่มีค่าน้อยที่สุดโดยแยกเป็นสองอย่าง 1.ระยะทางรวม 2.ค่าเที่ยวรถรวม แต่เวลาแสดงอยากให้แสดงเป็นรหัสพนักงาน กับ ชื่อพนักงาน ในชีด AA ครับ โดยเอาข้อมูลรหัสกับชื่อมาจากชีด BB
*และเมื่อเรากรอกข้อมูลระยะทางลงไป แล้วกด OK ข้อมูล ระยะทาง กับค่าเที่ยวรถอันใหม่ที่เรากรอกจะไปรวมกับยอดเดิมที่มีอยู่เพื่อให้โปรมแกรมคำนวณให้ใหม่ว่าใครที่มี ระยะทางรวม กับ ค่าเที่ยวรวมน้อยที่สุด (ค่าเที่ยวรถผมต้องการให้โประแกรมเพิ่มเองโดยไม่ต้องกรอกจำนวนเงิน โดยจะมีเกณฑ์ค่าเที่ยวรถตามระยะทางที่พนักงานทำตามชีด CC ครับ)

Re: ต้องการหาข้อมูลที่มีค่าน้อยที่สุด

Posted: Fri Feb 20, 2015 3:57 pm
by snasui
:D การหาค่าเช่นนั้นไม่จำเป็นต้องใช้ VBA ครับ
  1. เซลล์ B10 คีย์สูตร
    =MIN(IF(BB!C3:C16<>"",BB!C3:C16))
    Ctrl+Shift+Enter
  2. เซลล์ C10 คีย์สูตร
    =INDEX(BB!A$3:A$16,MATCH($B10,BB!$C$3:$C$16,0))
    Enter > Copy ไป D10
  3. เซลล์ B12 คีย์สูตร
    =MIN(IF(BB!D3:D16<>"",BB!D3:D16))
    Ctrl+Shift+Enter
  4. เซลล์ C12 คีย์สูตร
    =INDEX(BB!A$3:A$16,MATCH($B12,BB!$D$3:$D$16,0))
    Enter > Copy ไป D12

!
Note: Ctrl+Shift+Enter หมายถึง
  1. กรณีคีย์สูตรเอง เมื่อคีย์สูตรแล้ว แทนที่จะกด Enter ให้กดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  2. กรณี Copy สูตรไปวางให้กดแป้น F2 เพื่อทำการ Edit Cell นั้นก่อน จากนั้นกดแป้น Ctrl+Shift ค้างไว้แล้วกด Enter เพื่อสร้างเป็นสูตร Array
  3. หากกดแป้นถูกต้องสูตรนั้นจะมีเครื่องหมายปีกกาครอบ เช่น {=YourFormulas(...)} ปีกกานี้คีย์เข้าไปเองไม่ได้ ถ้ายังไม่เห็นปีกกาครอบสูตรแสดงว่ากดแป้นให้รับสูตรไม่ถูกต้อง
  4. การแก้ไขเปลี่ยนแปลงสูตร Array จะต้องกดแป้นให้รับสูตรด้วย Ctrl+Shift+Enter ทุกครั้ง

Re: ต้องการให้ข้อมูลใหม่ที่เพิ่มเข้า ไปรวมกับข้อมูลเดิม

Posted: Fri Feb 20, 2015 11:06 pm
by setsunatop
ชีด AA คือในเซลล์ที่ B5 คือข้อมูลงานใหม่ระยะทาง 450 กิโลเมตร ผมต้องการเลือกให้ใครคนใดคนหนึ่งจากสองคนที่โปรแกรมหามาให้ครับ(ด้านล่าง)

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

ตัวอย่าง ระยะทาง 450 กม. ก็จะได้รับค่าเที่ยวรถ 200 บาท
และเราเลือกมอบงานให้กับ M001 ประทีบ และในชีด BB ระยะทางกับค่าเที่ยวรถรวมของประทีบก็จะเพิ่มเป็น 550 , 1400 ตามลำดับ

Re: ต้องการหาข้อมูลที่มีค่าน้อยที่สุด

Posted: Sat Feb 21, 2015 6:27 am
by snasui
setsunatop wrote:ตัวอย่าง ระยะทาง 450 กม. ก็จะได้รับค่าเที่ยวรถ 200 บาท
และเราเลือกมอบงานให้กับ M001 ประทีบ และในชีด BB ระยะทางกับค่าเที่ยวรถรวมของประทีบก็จะเพิ่มเป็น 550 , 1400 ตามลำดับ
:D การทำเช่นนั้นต้องใช้ VBA ต้องเขียนมาก่อนตามกฎการใช้บอร็ดข้อ 5 ด้านบน :roll: ติดตรงไหนค่อยถามกันต่อครับ