0

数字アプリの表に次のデータがあります

   A          B                     C                 D
user_id     login                user_id        login
2039        Abbott, Rachael                     Adams, Sue
110         Abbott, Shelby                      Adamson, Wendy
2910        Abraham, Binu                       Anderson, Daryl
121         Adams, Sue
122         Adamson, Anne
126         Adamson, Wendy

私は次のようなアップルスクリプトを書き込もうとしています...

  1. 列Dのログインを繰り返します
  2. 列Bで一致するログインを見つける
  3. 一致が見つかった行の列Aのuser_idの値を取得します
  4. そして、それを列Dのエントリと同じ行の列Cに配置します。
set dName to "correlationstudies.numbers"
set sName to "users"
set tName to "Table 1"
set login_row to 2
set login_w_id_row to 2

tell application "Numbers" to tell document dName to tell sheet sName to tell table tName
   repeat
      set login to value of cell login_row of column 4
      if login = "" then exit repeat
      set login_w_id_row to 2

      repeat
         set logincomp to value of cell login_w_id_row of column 2
         if logincomp = login then
            set value of cell login_row of column 3 to value of cell login_w_id_row of column 1
            exit repeat
         end if
         set login_w_id_row to login_w_id_row + 1
      end repeat
      set login_row to login_row + 1
   end repeat
end tell
4

1 に答える 1

1

AppleScriptは、あなたがやろうとしていることに不必要かもしれません。数値のドキュメントで、ルックアップする値、ルックアップするセルのセット、および返す値の列が渡されるVLOOKUP関数を確認してください。user_id列とlogin列の順序を入れ替えるだけで機能するようになりましたが、ログインを列Aに、user_idを列Bに配置すると、セルC1 = VLOOKUP(D2、A2:B7、2)を設定すると121が正常に返されました。 。

于 2011-03-11T11:42:03.073 に答える