2016年7月27日 星期三

Flexbox 教學



http://www.codes51.com/article/detail_1201476_1.html

Flexbox 完全指南
我不是这篇文章的原创作者,我只是好文章的搬运工。原文地址 A Complete Guide to Flexbox
应用于 flex container 的属性
display flex,flexbox,flexslider,flex布局,flexpaper,flex2,css flex,fitbit flex,holofle
display
该属性定义一个 flex container,根据不同取值定义为 inline 或 block 的 flex container。应用了该属性的元素为它的所有子元素创建了一个 flex context。
.container {
  display: flex; /* or inline-flex */
}
注意,CSS3 的多列布局对 flex 容器没有任何影响。
flex-direction
display flex,flexbox,flexslider,flex布局,flexpaper,flex2,css flex,fitbit flex,holofle
该属性建立主轴,规定了 flex container 中的 flex item 的排布方向。Flexbox 是一种单向布局概念,可以认为 flex item 都优先沿着水平行或竖直列布局。
.container {
  flex-direction: row | row-reverse | column | column-reverse;
}  
  • row (默认值): 在 ltr 上下文中为由左到右;在 rtl 上下文中为由右到左。
  • row-reverse : 在 ltr 上下文中为由右到左;在 rtl 上下文中为由左到右。
  • column : 与 row 类似,只不过是由上到下。
  • column-reverse : 与 row-reverse 类似,只不过是由下到上。
flex-wrap
display flex,flexbox,flexslider,flex布局,flexpaper,flex2,css flex,fitbit flex,holofle
默认情况下,所有的 flex item 都将尽量保持在一个 line (行或者列,下同)之内。可以通过这个属性让 flex item 在需要的情况下换行或者换列。这里,新行或新列从哪里开始由 flex-direction 决定。
.container{
  flex-wrap: nowrap | wrap | wrap-reverse;
}
  • nowrap (默认值): 单 line。在 ltr 上下文中为由左到右;在 rtl 上下文中为由右到左。
  • wrap : 多 line。在 ltr 上下文中为由左到右;在 rtl 上下文中为由右到左。
  • wrap-reverse : 多 line。在 ltr 上下文中为由右到左;在 rtl 上下文中为由左到右。
flex-flow
该属性为 flex-direction 和 flex-wrap 的简写属性,同时定义了 flex container 的主轴和交叉轴。默认值为 row nowrap。

flexslider 使用教程


http://www.zendei.com/article/9882.html

英文什麼的,我才不想看咧……照著1234就好
  
註釋說明
 1 /**
 2  * Created by wuxiaolu on 2016/5/28.
 3  */
 4 $('.flexslider').flexslider({
 5     animation: "slide", // "fade" or "slide"圖片變換方式:淡入淡出或者滑動
 6     slideDirection: "horizontal", //"horizontal" or "vertical"圖片設置為滑動式時的滑動方向:左右或者上下
 7     selector: '.thumbnails .thumbnail',//滾動項目選擇器
 8     slideshowSpeed: 5000, // 自動播放速度毫秒
 9     animationSpeed: 600, //滾動效果播放時長
10     pausePlay: false,//是否顯示播放暫停按鈕
11     minItems: common.globals.SCREEN.ITEM,//最少顯示多少項
12     itemWidth: 220,//一個滾動項目的寬度
13     itemMargin: 20,//滾動項目之間的間距
14     slideshow: true, //Boolean: Animate slider automatically 載入頁面時,是否自動播放
15     animationDuration: 600, //Integer: S動畫淡入淡出效果延時
16     directionNav: true, //Boolean:  (true/false)是否顯示左右控制按鈕
17     controlNav: true, //Boolean:  usage是否顯示控制菜單//什麼是控制菜單?
18     keyboardNav: true, //Boolean:left/right keys鍵盤左右方向鍵控製圖片滑動
19     mousewheel: false, //Boolean: mousewheel滑鼠滾輪控制製圖片滑動
20     prevText: "Previous", //String: 上一項的文字
21     nextText: "Next", //String: 下一項的文字
22     pauseText: 'Pause', //String: 暫停文字
23     playText: 'Play', //String: 播放文字
24     randomize: false, //Boolean: Randomize slide order 是否隨機幻燈片
25     slideToStart: 0, //Integer:  (0 = first slide)初始化第一次顯示圖片位置
26     animationLoop: true, //  "disable" classes at either end 是否迴圈滾動 迴圈播放
27     pauseOnAction: true, //Boolean:  highly recommended.
28     pauseOnHover: false, //Boolean: 滑鼠糊上去是否暫停
29     controlsContainer: "", //Selector:  be taken.
30     manualControls: ".js-slidernav i", //Selector: .自定義控制導航// 小圓點活數字標示 css 選擇器
31     manualControlEvent: "", //String:自定義導航控制觸發事件:預設是click,可以設定hover
32     move: 0, //int:一次滾動項目個數
33     start: function (slider) {
34     }, //Callback: function(slider) - Fires when the slider loads the first slide 載入第一頁觸發
35     before: function (slider) {
36     }, //Callback: function(slider) - Fires asynchronously with each slider animation 每個滾動動畫開始時非同步觸發
37     after: function (slider) {
38     }, //Callback: function(slider) - Fires after each slider animation completes 每個滾動動畫結束時觸發
39     end: function (slider) {
40     } //Callback: function(slider) - Fires when the slider reaches the last slide (asynchronous) 滾動到最後一頁時非同步觸發
41 });

另外補充說明
1.回調的非同步大概指的是,觸發了回調動畫仍會繼續播放
2.回調參數里的slider我接下來詳細要講的



2016年7月22日 星期五

自己使用WordPress架部落格網站需要花多少錢?

http://www.blogfuntw.com/2014/04/wordpress-spend-money/

前一陣子「無名網站」及「Yahoo!奇摩部落格」關站對台灣的部落客圈造成了不小的衝擊,再加上Pixnet強力推行其MIB(Money in Blog)政策,強迫所有使用其部落格平台的格友上廣告,造成許多人蒙生自己架設網站的念頭。當自己使用WordPress架設部落格站需要花多少錢?相信這是許多想格友們最想知道的問題。
下見僅就個人經驗,提供一些試算,看看需要自己架設WordPress網站需要花多少錢?架設網站基本上需要購買自己的網址與租用虛擬主機這兩筆費用,如果不懂網站維護的朋友,可能還得花錢請別人幫忙維護網站,這個費用可就高了。
自己使用WordPress架部落格網站的基本費用試算如下:

購買網址的費用

  • 到國外購買【.com】網址,一年的平均費用約US$15。
  • 使用國內註冊商購買【.com】網址,一年的平均費用約NT$720(US$24)。
  • 如果你稍懂英文,建議在使用國外的註冊商購買網域會比較便宜。

租用虛擬主機

  • 租用國外的主機每個月平均US5.0,一年大約US$5.0×12=US$60。
  • 租用國內的主機,費用差距很大,良莠也參差不齊,目前比較便宜的價格一年大約NT2700(US$90)。
  • 國內的虛擬主機商的優點是可以使用中文溝通,但是費用比較貴,服務內容也比較少。如果你稍懂英文,還是建議你使用國外的虛擬主機商,建議選用美國的虛擬主機商。

網站維護的成本

假設平均一天花0.25個小時來維護,假設一個小時的工錢US$10元。一個月的維護成本US$10(每小時人工成本)x30(天)x0.25(小時)=US$75,一年的維護成本就是:US$75×12=US$900。
這個算法是你把整個網站包給網路公司幫你管理的時候,你所可能需要付出的費用,各家的成本可能都不一致,這個數字只是給大家參考而已。
如果你稍具網站知識,懂得一點點如何自己架站與維護,這筆錢就可以自己賺囉!

所以使用WordPress總花費

架設於國外每個月的費用每年的費用
使用國外註冊商購買網址的費用US$1.25US$15
租用虛擬主機(美國)US$5US$60
網站維護的成本US$75US$900
(不計網站維護成本)US$6.25US$75
總費用US$81.25US$975

架設於國內每個月的費用每年的費用
使用國外註冊商購買網址的費用US$2.0US$24
租用虛擬主機(美國)US$7.5US$90
網站維護的成本US$75US$900
(不計網站維護成本)US$9.5US$1,14
總費用US$84.5US$1,014
結論是:
  • 如果你懂得一點點英文稍具網站架設的能力,架設一個WordPress部落格每個月只需要US$6.25(NT187.5)元的費用,一年的費用為US$75(NT2,250)。這時候如果你的部落格有掛AdSense廣告每個月的廣告收入只要超過US$10.0,你應該就不要再使用這些BSP(部落格供應商平台,如Pixnet、Yam、Blogspot),而應該自己出來架設網站,否則廣告收入越多,繳給BSP就越多。
  • 如果你不懂得英文,也不知道如何架設網站,那麼就需要請人家幫你架設WordPress網站每個月大概要付US84.5(約NT2,535)元的費用,一年下來就要付US$1014(約NT30,420)。這種情況下,我會建議你繼續使用BSP所提供的服務,也不用自己傷腦筋維護網站,總之有錢大家賺,分一點給BSP也是應該的,否則叫BSP喝西北風,久了也會關門。現在有些國外的網站已經有中文客服了,感覺還不錯用。


2016年7月19日 星期二

使用函數將文字分成幾欄

source: https://support.office.com/zh-tw/article/%E4%BD%BF%E7%94%A8%E5%87%BD%E6%95%B8%E5%B0%87%E6%96%87%E5%AD%97%E5%88%86%E6%88%90%E5%B9%BE%E6%AC%84-c2930414-9678-49d7-89bc-1bf66e219ea8
函數
語法
LEFT(text, num_chars)
MID(text,start_num,num_chars)
RIGHT(text, num_chars)
SEARCH(find_text,within_text,start_num)
LEN(text)

範例 1:Jeff Smith

在此範例中,只有兩個元件:名字與姓氏。這兩個名稱元件是由一個空格分隔。
1
2
A
B
C
全名
名字
姓氏
Jeff Smith
=LEFT(A2, SEARCH(" ",A2,1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是字串的第一個字元 (J),結尾是第五個字元 (空格)。公式會傳回 A2 中從左算起的五個字元。
用於擷取名字的公式
使用 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋空格的數值位置,從左邊開始算起。(5)

姓氏

姓氏的開頭是空格,離右邊有五個字元,結尾是最後一個字元 (h)。公式擷取的是 A2 裡從右邊開始算起的五個字元。
用於擷取姓氏的公式
使用 SEARCH 與 LEN 函數尋找 num_chars 的值:
在 A2 中搜尋空格的數值位置,從左邊開始算起。(5)
計算文字字串的總長度,然後減去步驟 1 所得出之從左到第一個空格的字元數。(10 - 5 = 5)

範例 2:Eric S. Kurjan

在此範例中,全名中有三個元件:名字、中間名縮寫,以及姓氏。每個名稱元件之間以空格分隔。
1
2
A
B
C
D
姓名
名字 (Eric)
中間名 (S.)
姓氏 ( Kurjan )
Eric S. Kurjan
=LEFT(A2, SEARCH(" ",A2,1))
=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,1)+1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第一個字元 (E),結尾是第五個字元 (即第一個空格)。公式擷取的是 A2 裡從左邊開始算起的前五個字元。
用於分隔名字、姓氏與中間名縮寫的公式
使用 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(5)

中間名

中間名的開頭是第六個字元位置 (S),結尾是第八個位置 (即第二個空格)。此公式使用巢狀 SEARCH 函數,尋找第二個空格實例。
公式擷取的是從第六個位置開始算起的三個字元。
用於分隔名字、中間名及姓氏的公式細節
使用 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(5)
加 1 可得出第一個空格後的字元 (S) 位置。此數值位置是中間名的起始位置。(5 + 1 = 6)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(5)
加 1 可得出第一個空格後的字元 (S) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。(5 + 1 = 6)
在 A2 中搜尋第二個空格實例,從步驟 4 得出之第六個位置 (S) 開始算起。此字元數是中間名的結尾位置。(8)
在 A2 中搜尋空格的數值位置,從左邊第一個字元開始算起。(5)
用步驟 5 得出之第二個空格之字元數,減去步驟 6 得出之第一個空格的字元數。結果得出 MID 從文字字串所擷取的字元數,從步驟 2 得出之第六個位置開始算起。(8 – 5 = 3)

姓氏

姓氏的開頭是從右邊數來的第六個字元 (K),結尾是右邊數來的第一個字元 (n)。此公式使用巢狀 SEARCH 函數,尋找第二個及第三個空格實例 (即是從左邊數來的第五個和第八個位置)。
公式擷取的是 A2 裡從右邊開始算起的六個字元。
用於分隔名字、中間名及姓氏之公式中的第二個 Search 函數
使用 LEN 及巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋空格的數值位置,從左邊第一個字元開始算起。(5)
加 1 可得出第一個空格後的字元 (S) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。(5 + 1 = 6)
在 A2 中搜尋第二個空格實例,從步驟 2 得出之第六個位置 (S) 開始算起。此字元數是中間名的結尾位置。(8)
計算 A2 中文字字串的總長度,然後減去步驟 3 得出之從左邊算到第二個空格實例的字元數。結果得出從全名右邊所擷取的字元數。(14 – 8 = 6。

範例 3:Janaina B. G. Bueno

在此範例中,有兩個中間名縮寫。名稱元件是由第一個和第三個空格實例分隔。
1
2
A
B
C
D
姓名
名字 (Janaina )
中間名 (B. G.)
姓氏 ( Bueno )
Janaina B. G. Bueno
=LEFT(A2, SEARCH(" ",A2,1))
=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1)-SEARCH(" ",A2,1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第一個字元 (J),結尾是第八個字元 (即第一個空格)。公式擷取的是 A2 裡從左邊開始算起的前八個字元。
用於分隔名字、姓氏及兩個中間名縮寫的公式
使用 Search 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(8)

中間名

中間名的開頭是第九個位置 (B),結尾是第十四個位置 (即第三個空格)。此公式使用巢狀 SEARCH 函數,尋找分別位於第八個、第十一個及第十四個位置的第一個、第二個及第三個空格實例。
公式擷取的是從第九個位置開始算起的五個字元。
用於分隔名字、姓氏及兩個中間名縮寫的公式
使用 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(8)
加 1 可得出第一個空格後的字元 (B) 位置。此數值位置是中間名的起始位置。(8 + 1 = 9)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(8)
加 1 可得出第一個空格後的字元 (B) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。(8 + 1 = 9)
在 A2 中搜尋第二個空格,從步驟 4 得出之第九個位置 (B) 開始算起。(11)
加 1 可得出第一個空格後的字元 (G) 位置。這個字元數是一起始位置,您從這裡開始搜尋第三個空格。(11 + 1 = 12)
在 A2 中搜尋第三個空格,從步驟 6 得出之第十二個位置開始算起。(14)
在 A2 中搜尋第一個空格的數值位置。(8)
用步驟 7 得出之第三個空格之字元數,減去步驟 6 得出之第一個空格的字元數。結果得出 MID 從文字字串擷取的字元數,從步驟 2 得出之第九個位置開始算起。

姓氏

姓氏的開頭是從右邊數來的第五個字元 (B),結尾是右邊數來的第一個字元 (o)。此公式使用巢狀 SEARCH 函數,尋找第一個、第二個和第三個空格實例。
公式會擷取 A2 裡從全名的右邊開始算起的五個字元。
用於分隔名字、姓氏及兩個中間名縮寫的公式
使用巢狀 SEARCH 及 LEN 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(8)
加 1 可得出第一個空格後的字元 (B) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。(8 + 1 = 9)
在 A2 中搜尋第二個空格,從步驟 2 得出之第九個位置 (B) 開始算起。(11)
加 1 可得出第一個空格後的字元 (G) 位置。這個字元數是一起始位置,您從這裡開始搜尋第三個空格實例。(11 + 1 = 12)
在 A2 中搜尋第三個空格,從步驟 6 得出之第十二個位置開始算起。(14)
計算 A2 裡文字字串的總長度,然後減去步驟 5 得出之從左邊算到第三個空格的字元數。結果得出從全名右邊所擷取的字元數。(19 - 14 = 5)

範例 4:Kahn, Wendy Beth

在此範例中,姓氏在名字之前,而中間名出現在最後。逗號代表姓氏的結尾,每個名稱元件之間以空格分隔。
1
2
A
B
C
D
姓名
名字 (Wendy)
中間名 (Beth)
姓氏 (Kahn)
Kahn, Wendy Beth
=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-SEARCH(" ",A2,1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,1)+1))
=LEFT(A2, SEARCH(" ",A2,1)-2)
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第七個字元 (W),結尾是第十二個字元 (即第二個空格)。由於名字出現在全名的中間,因此您必須使用 MID 函數來擷取名字。
公式擷取的是從第七個位置開始算起的六個字元。
用於分隔姓氏後接名字和中間名的公式
使用 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(6)
加 1 可得出第一個空格後的字元 (W) 位置。此數值位置是名字的起始位置。(6 + 1 = 7)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(6)
加 1 可得出第一個空格後的字元 (W) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(6 + 1 = 7)
在 A2 中搜尋第二個空格,從步驟 4 得出之第七個位置 (W) 開始算起。(12)
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(6)
用步驟 5 得出之第二個空格之字元數,減去步驟 6 得出之第一個空格的字元數。結果得出 MID 從文字字串擷取的字元數,從步驟 2 得出之第七個位置開始算起。(12 - 6 = 6)

中間名

中間名的開頭是從右邊數來的第四個字元 (B),結尾是右邊數來的第一個字元 (h)。此公式使用巢狀 SEARCH 函數,從左邊開始尋找分別位於第六個及第十二個位置的第一個及第二個空格實例。
公式擷取的是從右邊開始算起的四個字元。
用於分隔姓氏後接名字和中間名的公式
使用巢狀 SEARCH 及 LEN 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(6)
加 1 可得出第一個空格後的字元 (W) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(6 + 1 = 7)
在 A2 中搜尋第二個空格實例,從步驟 2 得出之第七個位置 (W) 開始算起。(12)
計算 A2 裡文字字串的總長度,然後減去步驟 3 得出之從左邊算到第二個空格的字元數。結果得出從全名右邊所擷取的字元數。(16 - 12 = 4)

姓氏

姓氏的開頭是從左邊數來的第一個字元 (K),結尾是第四個字元 (n)。公式擷取的是從左邊開始算起的四個字元。
用於分隔姓氏後接名字和中間名的公式
使用 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(6)
減 2 以取得姓氏結尾字元 (n) 的數值位置。結果得出 LEFT 要抽選的字元數。(6 - 2 =4)

範例 5:Mary Kay D. Andersen

在此範例中,名字包含兩個部分:Mary Kay。由第二個和第三個空格分隔每個名稱元件。
1
2
A
B
C
D
姓名
名字 (Mary Kay)
中間名 (D.)
姓氏 (Andersen)
Mary Kay D. Anderson
=LEFT(A2, SEARCH(" ",A2,SEARCH(" ",A2,1)+1))
=MID(A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1,SEARCH(" ",A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1)-(SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第一個字元,結尾是第九個字元 (即第二個空格)。此公式使用巢狀 SEARCH 函數,尋找左邊數來的第二個空格實例。
公式擷取的是從左邊開始算起的九個字元。
用於分隔名字、中間名縮寫及姓氏的公式
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(5)
加 1 可得出第一個空格後的字元 (K) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格實例。(5 + 1 = 6)
在 A2 中搜尋第二個空格實例,從步驟 2 得出之第六個位置 (S) 開始算起。結果得出 LEFT 從文字字串所擷取的字元數。(9)

中間名

中間名的開頭是第十個位置 (D),結尾是第十二個位置 (即第三個空格)。此公式使用巢狀 SEARCH 函數,尋找第一個、第二個和第三個空格實例。
公式擷取的是從第十個位置開始算起的中間兩個字元。
用於分隔名字、中間名縮寫及姓氏的公式
使用巢狀 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊第一個字元開始算起。(5)
加 1 可得出第一個空格後的字元 (K) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(5 + 1 = 6)
在 A2 中搜尋第二個空格實例的位置,從步驟 2 得出之第六個位置 (K) 開始算起。結果得出 LEFT 從左邊所擷取的字元數。(9)
加 1 可得出第二個空格後的字元 (D) 位置。結果得出中間名的起始位置。(9 + 1 = 10)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
搜尋第二個空格後之字元 (D) 的數值位置。結果得出一字元數,可從該字元數位置開始搜尋第三個空格。(10)
在 A2 中搜尋第三個空格的數值位置,從左邊開始算起。結果得出中間名的結尾位置。(12)
搜尋第二個空格後之字元 (D) 的數值位置。結果得出中間名的起始位置。(10)
用步驟 6 得出之第三個空格之字元數,減去步驟 7 得出之 "D" 的字元數。結果得出 MID 從文字字串擷取的字元數,從步驟 4 得出之第十個位置開始算起。(12 - 10 = 2)

姓氏

姓氏的開頭是從右數來的第八個字元。此公式使用巢狀 SEARCH 函數,尋找分別在第五個、第九個及第十二個位置的第一個、第二個及第三個空格。
公式擷取的是從右邊算起的八個字元。
用於分隔名字、中間名縮寫及姓氏的公式
使用巢狀 SEARCH 及 LEN 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(5)
加 1 可得出第一個空格後的字元 (K) 位置。結果得出一字元數,可從該字元數位置開始搜尋空格。(5 + 1 = 6)
在 A2 中搜尋第二個空格,從步驟 2 得出之第六個位置 (K) 開始算起。(9)
加 1 可得出第二個空格後的字元 (D) 位置。結果得出中間名的起始位置。(9 + 1 = 10)
在 A2 中搜尋第三個空格的數值位置,從左邊開始算起。結果得出中間名的結尾位置。(12)
計算 A2 裡文字字串的總長度,然後減去步驟 5 得出之從左邊算到第三個空格的字元數。結果得出從全名右邊所擷取的字元數。(20 - 12 = 8)

範例 6:Paula Barreto de Mattos

在此範例中,姓氏包含三個部分:Barreto de Mattos。第一個空格代表名字的結尾與姓氏的開頭。
1
2
A
B
D
姓名
名字 (Paula)
姓氏 ( Barreto de Mattos )
Paula Barreto de Mattos
=LEFT(A2, SEARCH(" ",A2,1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第一個字元 (P),結尾是第六個字元 (即第一個空格)。公式擷取的是從左邊算起的六個字元。
用於分隔名字及由三部分組成之姓氏的公式
使用 Search 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)

姓氏

姓氏的開頭是從右邊數來的第十七個字元 (B),結尾是右邊數來的第一個字元 (s)。公式擷取的是從右邊開始算起的十七個字元。
用於分隔名字及由三部分組成之姓氏的公式
使用 LEN 及 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)
計算 A2 裡文字字串的總長度,然後減去步驟 1 得出之從左邊算到第一個空格的字元數。結果得出從全名右邊所擷取的字元數。(23 - 6 = 17)

範例 7:James van Eaton

在此範例中,姓氏包含兩個部分:van Eaton。第一個空格代表名字的結尾與姓氏的開頭。
1
2
A
B
D
姓名
名字 (James)
姓氏 (van Eaton)
James van Eaton
=LEFT(A2, SEARCH(" ",A2,1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第一個字元 (J),結尾是第八個字元 (即第一個空格)。公式擷取的是從左邊算起的六個字元。
用於分隔名字及由兩部分組成之姓氏的公式
使用 Search 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)

姓氏

姓氏的開頭是從右邊數來的第九個字元 (v),結尾是右邊數來的第一個字元 (n)。公式擷取的是從全名的右邊開始算起的九個字元。
用於分隔名字及由兩部分組成之姓氏的公式
使用 LEN 及 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)
計算 A2 裡文字字串的總長度,然後減去步驟 1 得出之從左邊算到第一個空格的字元數。結果得出從全名右邊所擷取的字元數。(15 - 6 = 9)

範例 8:Bacon Jr., Dan K.

在此範例中,姓氏在最前面,後面接的是後稱謂。姓氏和後稱謂,名字和中間名縮寫,則是以逗號隔開。
1
2
A
B
C
D
E
姓名
名字 (Dan)
中間名 (K.)
姓氏 (Bacon)
後稱謂 (Jr.)
Bacon Jr., Dan K.
=MID(A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1,SEARCH(" ",A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1)-SEARCH(" ",A2,SEARCH(" ",A2,1)+1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)+1))
=LEFT(A2, SEARCH(" ",A2,1))
=MID(A2,SEARCH(" ", A2,1)+1,(SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-2)-SEARCH(" ",A2,1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是第十二個字元 (D),結尾是第十五個字元 (即第三個空格)。公式擷取的是從第十二個位置開始算起的三個字元。
用於擷取「範例 8:Bacon Jr., Dan K.」之名字的公式
使用巢狀 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)
加 1 可得出第一個空格後的字元 (J) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(6 + 1 = 7)
在 A2 中搜尋第二個空格,從步驟 2 得出之第七個位置 (J) 開始算起。(11)
加 1 可得出第二個空格後的字元 (D) 位置。結果得出名字的起始位置。(11 + 1 = 12)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
搜尋第二個空格後之字元 (D) 的數值位置。結果得出一字元數,可從該字元數位置開始搜尋第三個空格。(12)
在 A2 中搜尋第三個空格的數值位置,從左邊開始算起。結果得出名字的結尾位置。(15)
搜尋第二個空格後之字元 (D) 的數值位置。結果得出名字的起始位置。(12)
用步驟 6 得出之第三個空格之字元數,減去步驟 7 得出之 "D" 的字元數。結果得出 MID 從文字字串擷取的字元數,從步驟 4 得出之第十二個位置開始算起。(15 - 12 = 3)

中間名

中間名的開頭是從右邊數來的第二個字元 (K)。公式擷取的是從右邊開始算起的兩個字元。
用於擷取「範例 8:Bacon Jr., Dan K.」之中間名的公式
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)
加 1 可得出第一個空格後的字元 (J) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(6 + 1 = 7)
在 A2 中搜尋第二個空格,從步驟 2 得出之第七個位置 (J) 開始算起。(11)
加 1 可得出第二個空格後的字元 (D) 位置。結果得出名字的起始位置。(11 + 1 = 12)
在 A2 中搜尋第三個空格的數值位置,從左邊開始算起。結果得出中間名的結尾位置。(15)
計算 A2 裡文字字串的總長度,然後減去步驟 5 得出之從左邊算到第三個空格的字元數。結果得出從全名右邊所擷取的字元數。(17 - 15 = 2)

姓氏

姓氏的開頭是從左邊數來的第一個字元 (B),結尾是第六個字元 (即第一個空格)。因此,公式擷取的是從左邊算起的六個字元。
用於擷取「範例 8:Bacon Jr., Dan K.」之姓氏的公式
使用 Search 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)

後稱謂

後稱謂的開頭是從左邊數來的第七個字元 (J),結尾是左邊數來的第九個字元 (.)。公式擷取的是從第七個字元開始算起的三個字元。
用於擷取「範例 8:Bacon Jr., Dan K.」之後稱謂的公式
使用 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)
加 1 可得出第一個空格後的字元 (J) 位置。結果得出後稱謂的起始位置。(6 + 1 = 7)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)
加 1 可得出第一個空格後的字元 (J) 之數值位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(7)
在 A2 中搜尋第二個空格的數值位置,從步驟 4 得出之第七個字元開始算起。(11)
步驟 4 得出之第二個空格的字元數減去 1,即可取得 "," 的字元數。結果得出後稱謂的結尾位置。(11 - 1 = 10)
搜尋第一個空格後之字元 (J) 的數值位置,這亦可在步驟 3 及步驟 4 中得出。(7)
搜尋第一個空格後之字元 (J) 的數值位置,這亦可在步驟 3 及步驟 4 中得出。(7)
用步驟 6 得出之 "," 的字元數,減去步驟 3 及 4 得出之 "J" 的字元數。結果得出 MID 從文字字串擷取的字元數,從步驟 2 得出之第七個位置開始算起。(10 - 7 = 3)

範例 9:Gary Altman III

在此範例中,名字是在字串的開頭,而後稱謂是在姓名的結尾。用於名稱元件的公式與範例 2 類似,其中可以使用 LEFT 函數來抽選名字、使用 MID 函數來抽選姓氏,以及使用 RIGHT 函數來抽選後稱謂。
1
2
A
B
C
D
姓名
名字 (Gary)
姓氏 (Altman)
後稱謂 (III)
Gary Altman III
=LEFT(A2, SEARCH(" ",A2,1))
=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-(SEARCH(" ",A2,1)+1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,1)+1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第一個字元 (G),結尾是第五個字元 (即第一個空格)。因此,公式擷取的是從全名的左邊開始算起的五個字元。
用於分隔名字、姓氏及稱謂的公式
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(5)

姓氏

姓氏的開頭是從左邊數來的第六個字元 (A),結尾是第十一個字元 (即第二個空格)。此公式使用巢狀 SEARCH 函數,尋找空格的位置。
公式擷取的是從第六個字元開始算起的中間六個字元。
用於分隔名字、姓氏及稱謂的公式
使用 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(5)
加 1 可得出第一個空格後的字元 (A) 位置。結果得出姓氏的起始位置。(5 + 1 = 6)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(5)
加 1 可得出第一個空格後的字元 (A) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(5 + 1 = 6)
在 A2 中搜尋第二個空格的數值位置,從步驟 4 得出之第六個字元開始算起。此字元數是姓氏的結尾位置。(12)
搜尋第一個空格後之字元 (A) 的數值位置,這亦可在步驟 3 及步驟 4 中得出。(6)
搜尋第一個空格後之字元 (A) 的數值位置,這亦可在步驟 3 及步驟 4 中得出。(6)
用步驟 5 得出之第二個空格的字元數,減去步驟 6 及 7 得出之 "A" 的字元數。結果得出 MID 從文字字串擷取的字元數,從步驟 2 得出之第六個位置開始算起。(12 - 6 = 6)

後稱謂

後稱謂的開頭是從右邊開始算起的三個字元。此公式使用巢狀 SEARCH 函數,尋找空格的位置。
用於分隔名字、姓氏及稱謂的公式
使用巢狀 SEARCH 及 LEN 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(5)
加 1 可得出第一個空格後的字元 (A) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(5 + 1 = 6)
在 A2 中搜尋第二個空格,從步驟 2 得出之第六個位置 (A) 開始算起。(12)
計算 A2 裡文字字串的總長度,然後減去步驟 3 得出之從左邊算到第二個空格的字元數。結果得出從全名右邊所擷取的字元數。(15 - 12 = 3)

範例 10:Mr. Ryan Ihrig

在此範例中,全名的前面有加上前稱謂。用於名稱元件的公式與範例 2 類似,其中可以使用 MID 函數來抽選名字,以及使用 RIGHT 函數來抽選姓氏。
1
2
A
B
C
姓名
名字 (Ryan)
姓氏 ( Ihrig )
Mr. Ryan Ihrig
=MID(A2,SEARCH(" ",A2,1)+1,SEARCH(" ",A2,SEARCH(" ",A2,1)+1)-(SEARCH(" ",A2,1)+1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,SEARCH(" ",A2,1)+1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊算起的第五個字元 (R),結尾是第九個字元 (即第二個空格)。此公式涉及將 SEARCH 函數放在巢狀結構中來尋找空格的位置。
此公式會從第五個位置算起抽選四個字元。
用於擷取「範例 10:Mr. Ryan Ihrig」之名字的公式
使用 SEARCH 函數尋找 start_num 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(4)
加 1 可得出第一個空格後的字元 (R) 位置。結果得出名字的起始位置。(4 + 1 = 5)
使用巢狀 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(4)
加 1 可得出第一個空格後的字元 (R) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(4 + 1 = 5)
在 A2 中搜尋第二個空格的數值位置,從步驟 3 及 4 得出之第五個字元開始算起。此字元數是名字的結尾位置。(9)
搜尋第一個空格後之字元 (R) 的數值位置,這亦可在步驟 3 及步驟 4 中得出。(5)
搜尋第一個空格後之字元 (R) 的數值位置,這亦可在步驟 3 及步驟 4 中得出。(5)
用步驟 5 得出之第二個空格的字元數,減去步驟 6 及 7 得出之 "R" 的字元數。結果得出 MID 從文字字串所擷取的字元數,從步驟 2 得出之第五個位置開始算起。(9 - 5 = 4)

姓氏

姓氏的開頭是從右邊開始算起的第五個字元。此公式使用巢狀 SEARCH 函數,尋找空格的位置。
用於擷取「範例 10:Mr. Ryan Ihrig」之姓氏的公式
使用巢狀 SEARCH 及 LEN 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(4)
加 1 可得出第一個空格後的字元 (R) 位置。結果得出一字元數,可從該字元數位置開始搜尋第二個空格。(4 + 1 = 5)
在 A2 中搜尋第二個空格,從步驟 2 得出之第五個位置 (R) 開始算起。(9)
計算 A2 裡文字字串的總長度,然後減去步驟 3 得出之從左邊算到第二個空格的字元數。結果得出從全名右邊所擷取的字元數。(14 - 9 = 5)

範例 11:Julie Taft-Rider

在此範例中,姓氏包含連字號。每個名稱元件之間以空格分隔。
1
2
A
B
C
姓名
名字 (Julie)
姓氏 (Taft-Rider)
Julie Taft-Rider
=LEFT(A2, SEARCH(" ",A2,1))
=RIGHT(A2,LEN(A2)-SEARCH(" ",A2,1))
在下列圖形中,全名中醒目提示的部分就是 SEARCH 公式所尋找的字元。

名字

名字的開頭是從左邊數來的第一個字元,結尾是第六個位置 (即第一個空格)。公式擷取的是從左邊算起的六個字元。
用於擷取「範例 11:Julie Taft-Rider」之名字的公式
使用 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋第一個空格的數值位置,從左邊開始算起。(6)

姓氏

整個姓氏的開頭是從右邊數來的第十個字元 (T),結尾是右邊的第一個字元 (r)。
用於擷取「範例 11:Julie Taft-Rider」之完整姓氏的公式
使用 LEN 及 SEARCH 函數尋找 num_chars 的值:
在 A2 中搜尋空格的數值位置,從左邊第一個字元開始算起。(6)
計算欲擷取之文字字串的總長度,然後減去步驟 1 得出之從左邊算到第一個空格的字元數。(16 - 6 = 10)