Google 张中的数字 TIX 时钟

digital TIX clock in Google Sheets

快速搜索结果为零,所以我想知道这是否可以在 google 张中完成,或者是否有人曾经尝试过...

背景:基本上它是一个时钟,分为 4 个区域,每个区域代表 1 个数字,基于随机点亮的方块的总和

读作 15:35

根据需要设置时区
设置更改和每分钟重新计算


条件格式设置为范围B2:M4
的字体和背景颜色相同 自定义公式对于四种颜色中的每一种都很简单:

=1=B2

=2=B2

=3=B2

=4=B2

B2 中的主要数组公式为:

=INDEX(IFERROR(1/(1/{
 VLOOKUP(SEQUENCE(3, 1), {SEQUENCE(3), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 1, 1), 1, 1, ); 
 SEQUENCE(3-MID(TEXT(NOW(), "hhmm"), 1, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(3, 1), )}, 2, ), {0;0;0}, 
 VLOOKUP(SEQUENCE(3, 3), {SEQUENCE(9), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 2, 1), 1, 2, ); 
 SEQUENCE(9-MID(TEXT(NOW(), "hhmm"), 2, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(9, 1), )}, 2, ), {0;0;0}, 
 VLOOKUP(SEQUENCE(3, 2), {SEQUENCE(6), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 3, 1), 1, 3, ); 
 SEQUENCE(6-MID(TEXT(NOW(), "hhmm"), 3, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(6, 1), )}, 2, ), {0;0;0}, 
 VLOOKUP(SEQUENCE(3, 3), {SEQUENCE(9), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 4, 1), 1, 4, ); 
 SEQUENCE(9-MID(TEXT(NOW(), "hhmm"), 4, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(9, 1), )}, 2, )})))



垂直tix时钟:

=INDEX(IFERROR(1/(1/{
 VLOOKUP(SEQUENCE(1, 3), {SEQUENCE(3), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 1, 1), 1, 1, ); 
 SEQUENCE(3-MID(TEXT(NOW(), "hhmm"), 1, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(3, 1), )}, 2, ); {0,0,0}; 
 VLOOKUP(SEQUENCE(3, 3), {SEQUENCE(9), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 2, 1), 1, 2, ); 
 SEQUENCE(9-MID(TEXT(NOW(), "hhmm"), 2, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(9, 1), )}, 2, ); {0,0,0}; 
 VLOOKUP(SEQUENCE(2, 3), {SEQUENCE(6), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 3, 1), 1, 3, ); 
 SEQUENCE(6-MID(TEXT(NOW(), "hhmm"), 3, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(6, 1), )}, 2, ); {0,0,0}; 
 VLOOKUP(SEQUENCE(3, 3), {SEQUENCE(9), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 4, 1), 1, 4, ); 
 SEQUENCE(9-MID(TEXT(NOW(), "hhmm"), 4, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(9, 1), )}, 2, )})))



或圆形设计:

=INDEX(IF(""=IFERROR(1/(1/{
 VLOOKUP(SEQUENCE(3, 1), {SEQUENCE(3), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 1, 1), 1, 1, ); 
 SEQUENCE(3-MID(TEXT(NOW(), "hhmm"), 1, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(3, 1), )}, 2, ), {0;0;0}, 
 VLOOKUP(SEQUENCE(3, 3), {SEQUENCE(9), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 2, 1), 1, 2, ); 
 SEQUENCE(9-MID(TEXT(NOW(), "hhmm"), 2, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(9, 1), )}, 2, ), {0;0;0}, 
 VLOOKUP(SEQUENCE(3, 2), {SEQUENCE(6), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 3, 1), 1, 3, ); 
 SEQUENCE(6-MID(TEXT(NOW(), "hhmm"), 3, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(6, 1), )}, 2, ), {0;0;0}, 
 VLOOKUP(SEQUENCE(3, 3), {SEQUENCE(9), SORT(QUERY({SEQUENCE(MID(TEXT(NOW(), "hhmm"), 4, 1), 1, 4, ); 
 SEQUENCE(9-MID(TEXT(NOW(), "hhmm"), 4, 1), 1,,)}, "where Col1 matches '\d'", ), RANDARRAY(9, 1), )}, 2, )})),,"⚫"))



demo spreadsheet

如果您喜欢模拟时钟,您可以使用 @benlcollins' 公式的无英国媒体报道版本:

=INDEX(SPARKLINE({QUERY({0, 0, 1; 0, 0, 0.8; 
 SEQUENCE(37,1,,10),       SIN(RADIANS(SEQUENCE(37,1,,10))),       COS(RADIANS(SEQUENCE(37,1,,10))); 
 SEQUENCE(12,1,30,30), 0.9*SIN(RADIANS(SEQUENCE(12,1,30,30))), 0.9*COS(RADIANS(SEQUENCE(12,1,30,30))); 
 SEQUENCE(12,1,30,30),     SIN(RADIANS(SEQUENCE(12,1,30,30))),     COS(RADIANS(SEQUENCE(12,1,30,30)));
 SEQUENCE(4,1,90,90),  0.8*SIN(RADIANS(SEQUENCE(4,1,90,90))),  0.8*COS(RADIANS(SEQUENCE(4,1,90,90)));
 SEQUENCE(4,1,90,90),      SIN(RADIANS(SEQUENCE(4,1,90,90))),      COS(RADIANS(SEQUENCE(4,1,90,90)))},
 "select Col2,Col3 order by Col1", ); 
 IFERROR(SIN(RADIANS(SEQUENCE(MINUTE(NOW())/60*360,1,1,1))), 0), 
 IFERROR(COS(RADIANS(SEQUENCE(MINUTE(NOW())/60*360,1,1,1))), 1); 0, 0; 
    0.75*SIN(RADIANS((MOD(HOUR(NOW()), 12)/12*360)+MINUTE(NOW())/60*30)),
    0.75*COS(RADIANS((MOD(HOUR(NOW()), 12)/12*360)+MINUTE(NOW())/60*30))}, 
 {"linewidth", 2; "color", "red"}))

或者试试这个老式数字时钟:

=INDEX(IFERROR(1/(1/TRANSPOSE(SPLIT(FLATTEN(SPLIT(TEXTJOIN(" ", 1, IFNA(
 HLOOKUP(REGEXEXTRACT(TEXT(NOW(), "xH:MM"), "(.)(.)(.)(.)?(.)?(.)?"), TRANSPOSE({
 1, "0 0 0 0 0 ० 0 0 0 0 0 ० 1 0 0 0 0 ० 1 1 1 1 1 ० 0 0 0 0 0 ०";
 2, "1 0 1 1 1 ० 1 0 1 0 1 ० 1 0 1 0 1 ० 1 1 1 0 1 ० 0 0 0 0 0 ०";
 3, "1 0 0 0 1 ० 1 0 1 0 1 ० 1 0 1 0 1 ० 1 1 1 1 1 ० 0 0 0 0 0 ०";
 4, "1 1 1 0 0 ० 0 0 1 0 0 ० 0 0 1 0 0 ० 1 1 1 1 1 ० 0 0 0 0 0 ०";
 5, "1 1 1 0 1 ० 1 0 1 0 1 ० 1 0 1 0 1 ० 1 0 1 1 1 ० 0 0 0 0 0 ०";
 6, "1 1 1 1 1 ० 1 0 1 0 1 ० 1 0 1 0 1 ० 1 0 1 1 1 ० 0 0 0 0 0 ०";
 7, "1 0 0 0 0 ० 1 0 0 0 0 ० 1 0 0 0 0 ० 1 1 1 1 1 ० 0 0 0 0 0 ०";
 8, "1 1 1 1 1 ० 1 0 1 0 1 ० 1 0 1 0 1 ० 1 1 1 1 1 ० 0 0 0 0 0 ०";
 9, "1 1 1 0 1 ० 1 0 1 0 1 ० 1 0 1 0 1 ० 1 1 1 1 1 ० 0 0 0 0 0 ०";
 0, "1 1 1 1 1 ० 1 0 0 0 1 ० 1 0 0 0 1 ० 1 1 1 1 1 ० 0 0 0 0 0 ०";
 IF((HOUR(NOW())<10)+(HOUR(NOW())>12), "x", "×"),  REPT("0 0 0 0 0 ० ", 5); 
 ":", "0 1 0 1 0 ० 0 0 0 0 0 ०"}&""), 2, 0))), "०")), " ")))))

supported formats:

H:M
H:MM
HH:MM
xH:MM
H:M AM/PM
H:MM AM/PM
HH:MM AM/PM
xH:M AM/PM
xH:MM AM/PM


注:每个数字设计都以转置状态存储