การจัดรูปแบบตามเงื่อนไขขึ้นอยู่กับค่าของเซลล์อื่น


490

ฉันใช้ Google ชีตเป็นแผงควบคุมรายวัน สิ่งที่ฉันต้องการคือเปลี่ยนสีพื้นหลังของเซลล์ B5 ตามค่าของเซลล์อื่น - C5 ถ้า C5 มากกว่า 80% สีพื้นหลังจะเป็นสีเขียว แต่ถ้าด้านล่างมันจะเป็นสีเหลือง / แดง

ใช้งานได้กับฟังก์ชั่น Google ชีตหรือฉันต้องใส่สคริปต์หรือไม่?


4
จนกว่าคุณจะย้ายไปที่ชีตใหม่ให้ปรับสคริปต์ตัวใดตัวหนึ่งจากคำตอบนี้โดยใช้onEditทริกเกอร์หรือคำตอบที่ไม่มี
Mogsdad

คำตอบ:


535

หมายเหตุ:เมื่อมีคำว่า "B5" ในคำอธิบายด้านล่างมันหมายถึง "B {current_row}" ดังนั้นสำหรับ C5 เป็น B5 สำหรับ C6 เป็น B6 และอื่น ๆ ยกเว้นว่าคุณระบุ $ B $ 5 - จากนั้นคุณอ้างอิงเซลล์หนึ่งเซลล์


สิ่งนี้ได้รับการสนับสนุนใน Google ชีตในปี 2558: https://support.google.com/drive/answer/78413#formulas

ในกรณีของคุณคุณจะต้องตั้งค่าการจัดรูปแบบตามเงื่อนไขใน B5

  • ใช้ " สูตรที่กำหนดเองเป็นตัวเลือก" =B5>0.8*C5และตั้งค่าให้
  • ตั้ง " ช่วง " B5เลือกที่จะ
  • ตั้งค่าสีที่ต้องการ

คุณสามารถทำซ้ำขั้นตอนนี้เพื่อเพิ่มสีเพิ่มเติมสำหรับพื้นหลังหรือข้อความหรือระดับสี

ยิ่งไปกว่านั้นให้ใช้กฎเดียวกับทุกแถวโดยใช้ช่วงใน " ช่วง " ตัวอย่างสมมติว่าแถวแรกเป็นส่วนหัว:

  • เกี่ยวกับรูปแบบตามเงื่อนไข B2, ตั้ง " สูตรที่กำหนดเองเป็น " =B2>0.8*C2เพื่อ
  • ตั้ง " ช่วง " B2:Bเลือกที่จะ
  • ตั้งค่าสีที่ต้องการ

จะเป็นเหมือนตัวอย่างก่อนหน้านี้ แต่ใช้ได้กับทุกแถวไม่ใช่เฉพาะแถว 5

ช่วงนี้ยังสามารถใช้ใน "สูตรที่กำหนดเองคือ" เพื่อให้คุณสามารถระบายสีทั้งแถวตามค่าคอลัมน์


1
ขอบคุณ Zig ที่ทำให้ฉันรู้ มีประโยชน์ แต่ไม่สามารถใช้งานได้เว้นแต่ฉันจะคัดลอกเนื้อหาเวอร์ชั่นสเปรดชีตเก่าของฉันไปยังใหม่ ขอบคุณเพื่อน
Mark Magalona

19
ฉันคิดออกคุณต้องใช้การอ้างอิงที่แน่นอน ตัวอย่างเช่น "= B5: B10 = C $ 5" ในฟอรัมและ B5: B10 ในช่วง
Ben

1
@Ben ชื่นชมมาก ฉันมีความคิดไม่ว่าใครจะคิดออกว่า
jjathman

29
หากต้องการอ้างอิงเซลล์บนชีตอื่น: =B2>0.8*indirect("Sheet1!C2")( ซอร์ส )
josephdpurcell

1
@ Zig Mandel ใช้งานได้ยกเว้นเซลล์ที่จัดรูปแบบเป็นสกุลเงินฉันแค่พยายามซ่อนช่วง (fore / background white) ของเซลล์บางแห่งก็เป็นสกุลเงิน ความคิดใด ๆ ได้อย่างไร ไชโย
Tino Mclaren

197

อีกหนึ่งตัวอย่าง:

หากคุณมีคอลัมน์จาก A ถึง D และจำเป็นต้องเน้นทั้งบรรทัด (เช่นจาก A ถึง D) ถ้า B เป็น "เสร็จสมบูรณ์" คุณสามารถทำได้ดังนี้:

"Custom formula is":  =$B:$B="Completed" 
Background Color:     red 
Range:                A:D

แน่นอนคุณสามารถเปลี่ยนช่วงเป็น A: T หากคุณมีคอลัมน์มากขึ้น

หาก B มี "Complete" ให้ใช้การค้นหาดังนี้:

"Custom formula is":  =search("Completed",$B:$B) 
Background Color:     red 
Range:                A:D

2
สิ่งที่ฉันกำลังมองหา ขอบคุณ!
RDT2

8
สิ่งนี้ดูเหมือนจะไม่ทำงานจนกว่าคุณจะระบุ$ในฟิลด์ "สูตรที่กำหนดเองคือ" เช่นทำ$B$2:$Bและไม่B2:B
tdk

2
เพียงเพิ่มคำตอบของ lucky1928 - หากคุณเปลี่ยนช่วงจาก A: D เป็น A: T คุณจะเพิ่มคอลัมน์เพิ่มเติมไม่ใช่บรรทัด / แถว หากคุณมีจำนวนแถวที่ จำกัด คุณต้องการให้การจัดรูปแบบตามเงื่อนไขทำงานได้อาจช่วยระบุแถวเช่น A2: D13 หากคุณมีแถวส่วนหัว มิฉะนั้นถ้าคุณกำลังจับคู่กับสิ่งที่ว่างเปล่าหรือไม่เท่ากับค่าที่ระบุคุณอาจเพิ่มสีให้กับแถวทั้งหมดที่มีอยู่ในแผ่นงานซึ่งอาจไม่ใช่สิ่งที่คุณต้องการ
Tom Bush

ฉันไม่สามารถบอกคุณได้ว่าฉันกำลังมองหาวิธีแก้ปัญหานี้นานแค่ไหนโดยเฉพาะอย่างยิ่งกับเกณฑ์ที่เป็นค่าข้อความ ขอบคุณ!
Frances Cherman

4
โปรดทราบว่า "=" ที่จุดเริ่มต้นของสูตรคือสิ่งที่สำคัญมาก
vy32

18

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

มันควรจะแสดงให้เห็นว่าคุณลักษณะที่น่าทึ่งนี้มีความสามารถและโดยเฉพาะอย่างยิ่งสิ่งที่ $ ทำงาน

ตารางตัวอย่าง

ตาราง google ชีตง่าย ๆ

สีจาก D ถึง G ขึ้นอยู่กับค่าในคอลัมน์ A, B และ C แต่สูตรต้องตรวจสอบค่าที่กำหนดในแนวนอน (ผู้ใช้เริ่มต้นสิ้นสุด) และค่าที่กำหนดในแนวตั้ง (วันที่ในแถวที่ 1) นั่นคือสิ่งที่เครื่องหมายดอลลาร์ได้รับประโยชน์

สารละลาย

มีผู้ใช้ 2 คนในตารางแต่ละคนมีสีที่กำหนดไว้ตามลำดับ foo (สีน้ำเงิน) และแถบ (สีเหลือง)
เราต้องใช้กฎการจัดรูปแบบตามเงื่อนไขดังต่อไปนี้และใช้ทั้งคู่ในช่วงเดียวกัน ( D2:G3):

  1. =AND($A2="foo", D$1>=$B2, D$1<=$C2)
  2. =AND($A2="bar", D$1>=$B2, D$1<=$C2)

ในภาษาอังกฤษเงื่อนไขหมายถึง:
ผู้ใช้คือnameและวันที่ของเซลล์ปัจจุบันคือหลังstartและก่อนend

สังเกตว่าสิ่งเดียวที่เปลี่ยนแปลงระหว่าง 2 สูตรคือชื่อของผู้ใช้ สิ่งนี้ทำให้ง่ายต่อการใช้ซ้ำกับผู้ใช้อื่น ๆ !

คำอธิบาย

สำคัญ : แถวและคอลัมน์ที่ผันแปรได้จะสัมพันธ์กับจุดเริ่มต้นของช่วง แต่ค่าคงที่จะไม่ได้รับผลกระทบ

มันง่ายที่จะสับสนกับตำแหน่งสัมพัทธ์ ในตัวอย่างนี้ถ้าเราใช้ช่วงD1:G3แทนD2:G3การจัดรูปแบบสีจะเลื่อนขึ้น 1 แถว
เพื่อหลีกเลี่ยงปัญหาดังกล่าวโปรดจำไว้ว่าค่าสำหรับแถวและคอลัมน์ตัวแปรควรสอดคล้องกับจุดเริ่มต้นของช่วงที่มีคุ้มค่าสำหรับแถวตัวแปรและคอลัมน์ควรสอดคล้องกับจุดเริ่มต้นของช่วงที่มี

ในตัวอย่างนี้ช่วงที่มีสีเพื่อเริ่มต้นคือD2:G3D2

User, startและendแตกต่างกันไปกับแถว
-> คอลัมน์คงที่เอบีซี, แถวตัวแปรเริ่มต้นที่ 2: $A2, $B2,$C2

Datesแตกต่างกันกับคอลัมน์
-> คอลัมน์ตัวแปรเริ่มต้นที่ D, แถวที่ 1 คงที่:D$1


นี่คืออัจฉริยะ!
Happy Bird

อาจต้องการโพสต์แยกต่างหาก แต่เป็นไปได้หรือไม่ที่จะจัดแต่งสไตล์ตามเงื่อนไขออกจากเซลล์อื่น? เช่นถ้าคุณมีตารางการค้นหาแยกต่างหากสำหรับพวกคุณ "foo" และ "บาร์" คุณสามารถกำหนดค่าการจัดรูปแบบตามเงื่อนไขเพื่อใช้ fg-color & bg-color ของเซลล์นั้นในกฎของคุณหรือไม่ นี่คือสิ่งที่ฉันต้องการบ่อยครั้งเป็นตัวบ่งชี้ "สถานะ" สำหรับแถวที่มีการกำหนดค่าสีและตัวเลือกสถานะได้อย่างง่ายดายโดยไม่ต้องตั้งโปรแกรมใหม่ด้วยตนเองตามกฎการจัดรูปแบบตามเงื่อนไข
Memetican

คุณอาจสามารถทำสิ่งนั้นกับสคริปต์ได้ ฉันคิดว่าฉันไม่เคยเห็นค่าเฉลี่ยแบบไดนามิกในการเลือกสีเฉพาะหรือรูปแบบที่มีอยู่ผ่านการใช้งานปกติ แก้ไข: เพื่อเริ่มการเขียนสคริปต์ไปที่เครื่องมือ> ตัวแก้ไขสคริปต์และเริ่มการเข้ารหัส แต่นั่นเป็นระดับใหม่ทั้งหมดในการใช้
Romain Vincent

6

โดยทั่วไปสิ่งที่คุณต้องทำคือเพิ่ม $ เป็นคำนำหน้าที่ตัวอักษรคอลัมน์และหมายเลขแถว โปรดดูภาพด้านล่าง

ป้อนคำอธิบายรูปภาพที่นี่


1
ขอบคุณสำหรับภาพหน้าจอมันช่วยอธิบายได้มาก
B.Adler

3

เปลี่ยนสีพื้นหลังของเซลล์ B5 ตามค่าของเซลล์อื่น - C5 ถ้า C5 มากกว่า 80% สีพื้นหลังจะเป็นสีเขียว แต่ถ้าด้านล่างมันจะเป็นสีเหลือง / แดง

ไม่ต้องพูดถึงว่า B5 มีค่าใด ๆ ดังนั้นสมมติว่า80%เป็น.8จัดรูปแบบเป็นเปอร์เซ็นต์โดยไม่มีทศนิยมและจำนวนที่ว่างเปล่าเป็น "ด้านล่าง":

เลือก B5, สี "อำพัน / แดง" พร้อมการเติมมาตรฐานจากนั้นเลือกรูปแบบ - การจัดรูปแบบตามเงื่อนไข ... , สูตรที่กำหนดเองคือและ:

=C5>0.8

Doneมีการเติมสีเขียวและ

ตัวอย่างกฎ CF


2

ฉันผิดหวังที่ต้องใช้เวลานานกว่าจะได้ผล

ฉันต้องการดูว่าค่าใดในช่วงที่ฉันอยู่นอกค่าเบี่ยงเบนมาตรฐาน

  1. เพิ่มการคำนวณค่าเบี่ยงเบนมาตรฐานไปยังเซลล์แห่งหนึ่ง =STDEV(L3:L32)*2
  2. เลือกช่วงที่จะเน้นคลิกขวาการจัดรูปแบบตามเงื่อนไข
  3. เลือกเซลล์รูปแบบถ้ามากกว่า
  4. ในกล่องค่าหรือสูตรประเภท=$L$32(เซลล์ใดที่ stdev ของคุณอยู่)

ฉันหาวิธีวาง STDEv แบบอินไลน์ไม่ได้ ฉันลองหลายอย่างด้วยผลลัพธ์ที่ไม่คาดคิด


สนใจที่จะอธิบาย downvote หรือไม่ ฉันชอบที่จะบันทึกประสบการณ์ของตัวเองที่นี่ มากกว่าหนึ่งครั้งฉันลืม googled และพบคำตอบของฉันเอง
Nick.McDermaid

1
ขอบคุณสำหรับคำตอบของคุณมันทำให้ฉันสามารถทำสิ่งที่ฉันต้องการได้ :)
Ollie
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.