• ベストアンサー

Excel2016 入力 予測候補設定

Excel2016で、セルA1に、「ABCXYZ」と入力しました。 A2セルに「ABC」と入力しました。 A3セルに「AB」と入力したら、予測候補として、入力中の1枚のシート内または すべてのシート(全ページ)内で、「ABC」と「ABCXYZ」と表示させ、クリックして選択できるような設定を教えてください。 文字列が部分的に共通している履歴を表示させるといった具合です。 よろしくお願いします。

  • koneo
  • お礼率44% (239/541)

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

多分、エクセルの設定やVBAを数行書いて実行では達成できるものではないでしょう。 エクセルにはオートコンピリート機能というのがあります。 VBAでのコードはApplicationの下のobjectですが、Application.EnableAutoComplete = True 全シート全体を対象にするものでなく、 (1)入力している1列のはなし(対象)で (2)その列で入力している際に限り (3)その列の途中セルに、もし空白セルがあると効かなくなる もので、カナ漢字変換のような、ベースで働き、他アプリより最優先の処理ではありません。 これを望みのものに、ユーザーが変えようとしても無理でしょう。 ーー 小生は、未塾者ですが、想像するに、よほどのOSも含めた熟達者が特別に作らないと達成できないでしょう。 ーー 下記のことは、 小生が素人のお遊び程度で考えてやってみると、下記のようなことならできました。 Sheet1に限定。 セル範囲F1:G15に、類似語を登録しておく。今回は、大阪と京都の2語にしました。 大阪駅前 大阪新地 大阪港 大阪梅田 大阪空港 大阪市交通局 大阪府庁 大阪城 大阪府庁咲洲分室 大阪府城公園 大阪市立動物園 大阪市立美術館 大阪城公園 京都駅前 京都祇園 京都タワー 京都河原町 京都御所 京都市交通局 京都庁 京都国際会議場 京都岡崎動物園 京都市美術館 京都二条城 京都市動物園 ーー Sheet1にリストボックスを1つ設ける。 A列ーD列のどこかのセルに「京都」と入れて、↑キーを押す(限定する意味になる)。 するとリストボックスに 京都駅前 京都祇園 京都タワー 京都河原町 京都御所 京都市交通局 京都庁 京都国際会議場 京都岡崎動物園 京都市美術館 京都二条城 京都市動物園 とでるから、望みの行をクリックすると、 アクチブセルの値が、「京都」⇒「京都二条城」に代わる。 OnkeyやFindやListBoxがらみの機能のコードを使って、20数行ぐらいのコード行数で、多数の行になるわけではないが、VBAの既存の知識や経験が必要なので、質問者の状態がわからず、ここにはコピーしませんが。 ーー 多少の改良策として ・F1:G15の検索候補語の中身  →他のデータから、収集してきて、大量にするとか ・その中から候補としてリストボックスに選ぶロジック  上記は、簡単なワイルドカード類似の、部分一致ですが、正規表現など、手の込んだことを考えることはできそうです。

koneo
質問者

お礼

ご連絡ありがとうございました。 どなたをベストアンサーとさせていただくかは、自分の勉強不足で決めかね ますが、一番長文で投稿いただきました方とさせていただきます。

その他の回答 (2)

  • HohoPapa
  • ベストアンサー率65% (454/691)
回答No.2

エクセルのオートコンプリートは https://support.office.com/ja-jp/article/%E3%82%BB%E3%83%AB%E5%85%A5%E5%8A%9B%E3%81%AE%E3%82%AA%E3%83%BC%E3%83%88%E3%82%B3%E3%83%B3%E3%83%97%E3%83%AA%E3%83%BC%E3%83%88%E6%A9%9F%E8%83%BD%E3%81%AE%E3%82%AA%E3%83%B3%E3%81%A8%E3%82%AA%E3%83%95%E3%82%92%E5%88%87%E3%82%8A%E6%9B%BF%E3%81%88%E3%82%8B-0f4aa749-b927-4ea7-adaa-86f8d4f9fe20 に説明があり、 入力した文字がその列の既存の入力値と一致するとき という制約がありますので、 >入力中の1枚のシート内またはすべてのシート(全ページ)内で という期待には応えることができません。 IMEの機能、例えばMS-IMEの予測入力機能であれば アプリ横断であり、 >入力中の1枚のシート内またはすべてのシート(全ページ)内で ではありませんが、期待に近いだろうと思います。

koneo
質問者

お礼

YOUTUBEなどで、見てみました。 ありがとうございました。

  • tokohay
  • ベストアンサー率10% (171/1568)
回答No.1

オートコレクトかユーザー設定リストで編集できます。

koneo
質問者

お礼

YOUTUBEなどで、見てみました。 ありがとうございました。

関連するQ&A

  • Excel2003でセルに入力候補漢字を表示させるには?

    Excel2003でセルに日本語を入力する際、変換漢字候補がセルに表示されず黒塗りつぶしのスペースが出る(変換漢字候補はワークシート欄外に表示される)。セルに変換漢字候補を表示させるにはどうすればよいのでしょうか?

  • 【Excel】ヘッダーの設定について

    Excel2003を使用しています。 ヘッダーに、例えばSheet1のA1セルに入力されている内容を 表示させることはできますか? A1セルの内容が変わればヘッダーの表示内容も変わるように したいのですが、このようなことは可能でしょうか? よろしくお願いします。

  • Atokで、直接入力&半角英数で、予測候補を出さない方法ってありますか

    Atokで、直接入力&半角英数で、予測候補を出さない方法ってありますか? 最近日本語入力をAtokに変えてみました。 日本語の推測はまだいいとして、直接入力の半角英数を打っいてもその先を予測して変換候補が出てきてしまうのがどうにも邪魔でしょうがありません。 たとえば excelのセル内で"as"だけを入力したかった場合でも、"as"と打つと"as a child"と予測されててしまい、そのままEnterを押すと、"as a child"とセルに入力されて改行してしまいます。 いろいろ環境設定をいじったのですが、なかなかこの事態が解消されません。どのようにしたら「直接入力」、「半角英数」の場合予測されないようになるのでしょうか。ご教示いただければ幸いです。

  • エクセル 「入力候補を複数表示させたい」

    Microsoft Excelにて 下記のような入力システムをつくりたいです。 セル編集モードの間、 そのセルに既に入力されている文字列を含む文字列を あるリストの中から全て集めてリスト表示し(予測入力候補リスト) その中からユーザが選んだ文字列をセルに入力する。 分かり易い類似例としては、 googleなどの検索ボックスが挙げられます。 検索ワードを入力すると、 ワードをすべて打ち終わる前に、 既に入力された文字列を含むワードのリストがリスト表示され、 ユーザはリストからワードを選択して検索ボックスに入力できます。

  • 【Excel】日付を条件のひとつに指定してデータ集計

    Excel2003を使用しています。 Sheet1   A    B         C 1 4/1  (株)Excel    \100 2 4/1  ACCESS    \300 3 4/1  Excel(株)    \200 4 4/2  Word       \150 5 4/2  Excel       \100 6 4/3  ACCESS(有)  \200 7 4/3  Excel       \100 7 4/3  (有)ACCESS  \100 が入力されている表があります。 Sheet2に   A    B    C 1 4/2  合計値 個数 2 4/3  合計値 個数 Sheet2のA1セルに日付(仮に4/2とします)を入力したら、Sheet1にある条件に一致する日付を検索し、尚且つ、部分一致する文字列(仮にExcelとします)を検索し、両条件に一致したC列の合計を Sheet2のB1セルに表示させる様にしたいのですが、どのようにすればいいでしょうか? 又、上記同様で Sheet2のA1セルに日付(仮に4/3とします)を入力したら、Sheet1にある条件に一致する日付を検索し、尚且つ、部分一致する文字列(仮にACCESSとします)を検索し、両条件に一致した個数を Sheet2のC2セルに表示させる様にしたいのですが、どのようにすればいいでしょうか? 関数で試してみたのですが、うまくいかなかったので、質問させていただきました。 よろしくお願いします。

  • Excel2007 入力規則の元の値の設定方法

    こんばんは。 OSはVISTA、Excel2007を使っています。 今作業中のBookは、Sheet1とSheet2から構成されています。 Sheet2のA列の1行目にアメリカ、2行目にイギリス、3行目に中国、4行目にオランダと入力しています。 Sheet1のA列にSheet2のA列1行目から4行目(アメリカからオランダ)までをデータ入力規則機能を使って選択したいと思い、次の操作を行いました。 Sheet1のA1を選択。 【データ】→【データの入力規則】→【リスト】→【元の値】 ここで、【元の値】としてSheet2のA列1行目から4行目を選択するために、Sheet2にカーソルを移動させようとしたのですが、Sheet2にカーソルを移動できませんでした。 仕方なく、【元の値】にベタ打ちで「=Sheet2!$A$1:$A$4」と入力したのですが、カーソルでSheetをまたいで【元の値】となるセルを選択することはできないのでしょうか。 (上の例ではSheet1のA1セルのリストの元の値を Sheet2から選択する。) ご教示の程、よろしくお願いいたします。

  • Excel2016 セル入力表示・書式設定

    Windows10でExcel2016を使用しています。 2つ質問があります。 (1)セルの入力表示について 例えば、A1セルに長い文字を入力すると、通常であればB1セルにも表示されますが、表示されません。B1セルには空白等何も入力していません。 (2)セルの書式設定について 例えばA1セルに数字の1を入力すると、通常であれば右端に表示されますが、左端に表示され、そのセルはセンタリング・右寄せできません。表示形式は、標準でセンタリング等の設定にはなっていますが、実際の表示は、左寄せです。 別シートで入力すると通常通りできます。 設定を解除できる方法をご存じでしたら教えてください。 ※OKWAVEより補足:「富士通FMV」についての質問です。

  • EXCEL関数について

    EXCEL関数について EXCEL2003を使用しております。 お知恵を拝借願います。 Sheet1、A列、A2~A100セルに「1~10」の数字がランダムに入力されています。 数字は「グループ1」、「グループ2」・・・「グループ10」という意味です。 Sheet1、B列、A2~A100セルに「1~20」及び、「OK」、「NG」がランダムに入力されています。 Sheet2、A列、A2~A21セルに「1~10」までの数字(グループ)が順に入力されており、 Sheet2、1行目、B1~W1セルに、「1~20」及び「OK」、「NG」が順に入力されております。 ここで、Sheet2のB2セルに、Sheet1にて「グループ1」は 「1」をいくつ選択しているかを返す式を入れたいのですが、 SUMIF?COUNTIF?等でいろいろと試してみたのですが、うまくいきません。 同じように、C2セルであれば、「グループ1」は「2」をいくつ選んでいるか。 W5であれば、「グループ4」は「NG」をいくつ選んでいるかの式を入力したいのです。 拙文乱文、大変恐縮ですが、ご教示頂きたく何卒宜しくお願い致します。

  • 他シートのデータを参照させたい(excel2007

    excel2007において、他のシートのデータを参照させる方法についてどなたか教えてください。 =sheet1!a1 のように入力して他のシートのデータを表示させる方法は使っているのですが、複数のセルのデータを参照させるのに手間取っています。 たとえばsheet1にある5行5列(25セル)のデータをsheet2の5行5列(25セル)に表示させたいときは、25個のセルすべてに上記のように入力すればいいのですが、参照させたい元の25セルのどこかにセルの結合が使われていると、sheet2においても同じように結合させなければsheet1と同じ表示になりません。 sheet1でセルの結合が使われたときはsheet2においても同じように「セルの結合も自動で参照させる(連動させる)」ということは可能なのでしょうか? 詳しい方いらっしゃいましたら、よろしくお願いいたします。

  • EXCEL関数について

    EXCEL関数について Sheet1、A1~A1000セルに「1~10」までの値がランダムに入力されております。 数字は「グループ1」、「グループ2」・・・という意味です。 B列、B1~B1000セルには「1~4」までの値がランダム入力されております。 B列については、空白のセルもあります。 Sheet2、A1~A10セルに、「1~10」までの値、「グループ1」~「グループ10」までが順に入力されております。 ここで、Sheet2、B列~E列、それぞれの1~10セルを使用し、、 それぞれの「グループ」がSheet1にて「1~4」の値をいくつずつ選んでいるか算出したいのです。 「グループ1」について、「1」のカウントはB1セル、「2」のカウントはC1のセルに返します。 同じように「グループ2」はB2~E2のセルに、「グループ3」はB3~E3のセルに値を返したいのです。 「COUNTIF」等の関数でいろいろと試してみたのですがうまく反映されません。 拙文乱文、大変恐縮ですが、ご教示頂きたく何卒宜しくお願い致します。

専門家に質問してみよう