2012年6月16日 星期六

Google文件製作預定/通販訂單的隱藏欄位

給同樣使用Google文件製作同人預訂/通販訂單的同好們參考:
使用的教學可以參照這邊:
走在雲端上 – 讓 Google 文件幫你訂便當/團購

不過我們今天要討論的是安全的問題,
特別是當你要把訂單公開給訂購者確認的時候。




這邊是我在CWT31新刊的訂單名冊,可以看到e-mail欄位(紅色方框內) 並不是我們想公開的內容。
怎麼辦呢?
這時我很直覺地想到就用隱藏欄位把她關閉起來,反正訪客也不能編輯把她打開來看。



但昨天半夜我才突然想發現,這樣是有問題的。
因為訪客可以按另存新檔成EXCEL再把那個欄位打開來看

嘩!資安漏洞! 如果大家的e-mail都被盜走了可不是鬧著玩的!
我趕快把系統下架,並且找尋了適當的解決辦法。
幸好,Suoni 君在 Google文件通販教學:在確認清單隱藏部份資訊 提到了解決的辦法。
改成用 網頁分享 的方式,並且套用公式到另外一個表單即可,請大家先看看他的做法。

不過這時候遇到了一個問題,新加入的訂購資料顯示不出來。為什麼呢?

原來問題是出在公式 。文章中的 ='工作表1'!A2 這個公式遇到新進資料的時候並不會套用。
所以我翻了翻 google form的說明文件 ,發現INDIRECT這個函數似乎滿足我的需求。

我們直接看範例吧:



上面是我的 '原始資料表' 工作表其中一部分。



上面是我要公開的 '預購名單' 工作表其中一部分。注意到 "我的連絡方式" 沒有出現在這裏面。
那麼一樣按照 Suoni 君的教學,在這個工作表裏面填入公式,但這次填的是不一樣的公式:

A欄位裡,填入 =INDIRECT("'原始資料表'!A" & ROW()) 對應 '原始資料表' 的A欄位
B欄位裡,填入 =INDIRECT("'原始資料'!B" & ROW()) 對應 '原始資料表' 的B欄位
C欄位裡,填入 =INDIRECT("'原始資料'!D" & ROW()) 對應 '原始資料表' 的D欄位
D欄位裡,填入 =INDIRECT("'原始資料'!E" & ROW()) 對應 '原始資料表' 的E欄位

公式裡面有很多符號,我把她放大標色這樣大家看得比較清楚:

=INDIRECT("'原始資料表'!A" & ROW())

最後一樣套用Suoni君剛剛那篇文章的教學,使用網頁的方式公開資料。
我們先謝謝他詳細的說明,並祝你能順利地保護你的訂單 :)


5 則留言 :

  1. 看起來挺不錯的。
    沒想到google文件可以這樣玩。

    回覆刪除
    回覆
    1. 他的「問卷」功能被很多同人活動拿來當作報名表使用
      只需要有google帳號且免費,蠻受歡迎的。

      刪除
  2. 請問祥平君
    若使用=INDIRECT("'表單回應'!A" & ROW())這個公式
    裡面的A無法用拉的使後面的格子自動跑成數列狀態下去嗎?
    像是下一格就變成B C D E F這樣

    回覆刪除
    回覆
    1. 唔,我當初是用自己打的啦

      刪除
  3. 謝謝祥平君……
    我嚐到你的辛苦了嗚嗚

    回覆刪除