エクセルで値として貼り付けた計算式を使って送付先名の一覧を作りたい

このQ&Aのポイント
  • エクセルで値として貼り付けた計算式を使用して送付先名の一覧を作成したい場合、計算式を各セルに入力し、アクティブにするためにダブルクリックやF2キーを押し、エンターキーを押す必要があります。しかし、この作業を一括で再計算する方法はありません。エクセル2007を使用している場合、ツールバーの数式の計算方法は「自動」に設定されています。
  • 送付先名をシートごとに入力したい場合、各シートのB9セルに送付先名を入力します。列Aには「='A4'!B9」「='A4 (2)'!B9」「='A4 (3)'!B9」という数式を入力し、オートフィルを使用して1000行ほど入力します。しかし、オートフィルが使用できない場合、以下の手順を行う必要があります。J1セルに「B9」と入力し、A列には「A4」「A4 (2)」「A4 (3)」と入力し、B列には「=CONCATENATE(A1,$J$1)」「=CONCATENATE(A2,$J$1)」「=CONCATENATE(A3,$J$1)」と入力します。その後、B列の値をC列に貼り付けます。
  • しかし、C列の計算は自動で行うことができません。もし自動計算ができない場合は、他の方法を検討する必要があります。
回答を見る
  • ベストアンサー

エクセルで値として貼り付けた計算式

エクセルで値として貼り付けた計算式を計算させたいです。 下記手順で送付先名の一覧を作りたいのですが、計算式を貼り付けた後、計算式の入っている各セルごとにダブルクリックかF2を押してアクティブにしたあとエンターを押さなければいけないので、一括で再計算できないものかと疑問に思っています。 どうぞよろしくお願いいたします。 エクセル2007を使っています。 ツールバー→数式→計算方法の設定では「自動」を選択しています。 郵送物1枚につき、シートを一枚使う形で、シート名は、シート1が「A4」、シート2が「A4(2)」シート3が「A4(3)」・・・という名前をつけています。 各シートのセルB9に送付先名が入っています。 列Aに「='A4 '!B9」「='A4 (2)'!B9」「='A4 (3)'!B9」という数式をオートフィルを使って1000行ほど入れたかったのですが、オートフィルが使えなかったので、下記の手順で行いました。 <手順> J1…「B9」と入力。 A列…、上から、A4、A4 (2)、A4 (3)...以下オートフィル。 B列…、上から、=CONCATENATE(A1,$J$1)、=CONCATENATE(A2,$J$1)、=CONCATENATE(A3,$J$1)... C列…、B列を値として貼り付け。 このC列の計算が自動で行えません。 以上、できないようでしたら、その旨もアドバイスお願いいたします。

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

  • ベストアンサー
  • MackyNo1
  • ベストアンサー率53% (1521/2850)
回答No.1

>計算式の入っている各セルごとにダブルクリックかF2を押してアクティブにしたあとエンターを押さなければいけないので、一括で再計算できないものかと疑問に思っています。 手順の方法に良くわからないところがありますが、もし、ダブルクリック後にEnterで正しい数式が計算されるなら、その列(C列)を選択して「データ」「区切り位置」で「完了」してくださいい。

nao21213
質問者

お礼

回答いただきましてありがとうございます。 区切り位置で計算結果を表示することができました。 ありがとうございました。

その他の回答 (1)

  • xls88
  • ベストアンサー率56% (669/1189)
回答No.2

="='"&A1&"'!"&$J$1 でオートフィル 値で貼り付け後 データ>区切り位置で、ダイアログが出たら、何もせず「完了」 これで数式になります。

nao21213
質問者

お礼

回答いただきましてありがとうございます。 区切り位置で数式にすることができました。

関連するQ&A

  • VBAの計算式で値を検出し別シートに貼り付ける

    例でA.xls sheet1に添付のデータがありB.xls sheet1のB列に検索値がありC列に記載のとおりの計算式が入力されています。関数入力はC2セルにの計算式を入力しそれを元にオートフィルでC3以降入力しているが膨大な計算式になりExcelを開いたりするのに処理に時間がかかりすぎる為セルに計算式をいれるのではなくVBAで計算式を入力しオートフィルみたいに連続した計算の値のみを入力したいのですがコードが解る方宜しくお願いします。

  • エクセルの関数について。

    エクセルの関数。 Sheet1の作業列1のA2セルに =IF(COUNTA(Sheet2!2:2)=0,"",IF(Sheet2!A2="",A1,Sheet2!A2)) →数式1とする 作業列2のB2セルに =IF(A2=$D$2,ROW(),"") →数式2とする という数式を入れA2・B2セルを範囲指定 → B2セルのフィルハンドルで下へコピーしておきます。 (Sheet2の行数以上コピーしておく) そしてE2セルに =IF(COUNT($B:$B)<ROW(A1),"",INDEX(Sheet2!B:B,SMALL($B:$B,ROW(A1)))&"") →数式3とする という数式を入れオートフィルで列方向・行方向にコピーする。 教えて頂きたいことは、数式1、数式2、数式3が何を意味しているのか。 と、この数式を使って、表を作成したのですが、ある特定の数字(コード、D2セルに入力)を入力しても反応してくれない。 (E2~H2まで、空白セルの状態になります。) (sheet2は約1200行あります。) 教えて頂けないでしょうか?

  • エクセルで、値が飛んでこないのは?

    エクセルで、シートからシートへ値をとばすように設定しているのに値が入力されません。例: シートAのセル1の値をシートBのセルへ飛ばすとき、Bシートのセルの数式は ”+A!A1”となりますが、A1の値が飛んできません。F2を押してENTERキーを押すと飛んできます。たくさんのシートがあるので、大変です。どうしたらいいですか?

  • ExcelのCOUNTIFで条件の値に1を足す方法

    ExcelのCOUNTIFを使って集計をしています。 「Log」とういうシートのデータを固定で範囲指定(オートフィルで範囲が変わってしまうため)し、その中に「Sheet1」のA列のデータ(文字列:氏名)といくつ合致しているかを集計しようとしています。 =COUNTIF(Log!$B$7:$B$510,"*A1*") 上記数式をG1に入力しオートフィルでコピーしてもコピー先の数式は何も変わりませんでした。 =COUNTIF(Log!$B$7:$B$510,"*A2*")と手入力し再度コピーすると ・・・"*A1*"、・・・"*A2*"、・・・"*A1*"、・・・"*A2*"となるだけでした。 どうすればオートフィルでA1,A2,A3…となってくれるでしょうか? もし他の(簡単な)方法があれば教えていただければ幸いです。 使用ソフト:Excel2002 よろしくお願いいたします。

  • excelで自動計算

    excelで九九の早見表のようなものを作りたいのですが・・・ ___A__B__C__D 1_____1__2__3 2__1__1__2__3 3__2__2__4__6 4__3__3__6__9 B2のセルには、A2*B1 C2のセルには、A2*C1 D2のセルには、A2*D1 B3のセルには、A3*B1 ・・・といった感じの表を作りたいのですが。 オートフィルを使って(又は自動で)さくっと簡単に作ることは可能でしょうか? B2=A2*$B$1 とやれば、縦方向にはオートフィルで1列だけうまくいくのですが、横方向にはうまくいってくれません。 2行目を全部手入力でやって、縦方向にオートフィルで出来そうなんですが、 100 X 100 以上の表を作りたいので途中でやる気がなくなります。 何かいい方法があれば、教えてください。 よろしくお願いいたします。

  • エクセル2010の絶対参照について。

    エクセル2010についての質問です。 ファイルはエクセル2003?2007?のものを互換モードで使っております。 よろしくお願い致します。 sheet1のセルA1に、別のシート(Sheet2)のA2~A11の合計をオートサムで求めると数式が=SUM([Sheet2.xls]Sheet2!$A$2:$A$11)となっています。 sheet1のセルB1に数式=SUM([Sheet2.xls]Sheet2!$B$2:$B$11) sheet1のセルC1に数式=SUM([Sheet2.xls]Sheet2!$C$2:$C$11) sheet1のセルD1に数式=SUM([Sheet2.xls]Sheet2!$D$2:$D$11) をオートフィルか、コピーアンドペイストで素早くやりたいのですが、 数式の$を消して、=SUM([Sheet2.xls]Sheet2!A2:A11)でオートフィルでできるのですが、 自動で$が入力されるのがなぜだか分かりません。 $が自動で入力される理由と、$があるなしの違いを、理解してる方に聞きたいと思い 質問しました。 よろしくお願い致します。

  • エクセルで数式ではなく値をコピーしたい

    セルA1とA2の値をくっつけるために C1に「=CONCATENATE(A1,A2)」と入力しました。 このC1の表示された内容を 別のセルに文字列で表示したいのですが どうすればよいのでしょうか? (別のセルではなくてもよいのですが 普通にコピーをすると数式がコピーされる形に。。。)

  • エクセルでの計算式で求められた値に( )カッコをつけたいのですが…

    よろしくお願いします。 A列には、税抜きの価格、 B列には、税込み価格を入力したいので B列には =A1*1.05  と計算式を入れればいいのですが そこで、出た値に( )かっこ を付けたいのです。 B列のセルの書式設定の表示設定で、ユーザー定義の(@)やら試しても、計算式が入っているセルには適応できないようで、うまくいきません。 どなたか分かりやすく教えていただける方がいましたら、ありがたいです。 よろしくお願いします。m(_ _)m

  • エクセルの関数(最後の値を返す)

    A1からJ65までの範囲のなかで (計算式などが入ってるセルも含まれてます) J列の最後に表示されている値を返したいのですが どんな計算式をしていいか 調べてもわからず困っています。 J35のときもあればj40のときもあります。 ちなみにJ列にはすべて 計算式がはいってます。 その計算結果が表示されているセルと空白のセルがあります。 (J1からJ40まで値表示J41からしたは空白表示のときJ40を返したい このときA列はA1からA40までは値が入力されてますがA41からしたはまったくの空白です)

  • Excel 隣接しない列に一発で値貼り付け

    Excel 隣接しない列に一発で値貼り付け 隣接する列に表示されたデータを、同じシートの隣接しない列に一発で値の貼り付けがしたいのですが、可能でしょうか?   A     B     C    D    E         1 チェック タイトル 名前1  名前2 説明 2 ○    野菜   人参   牛蒡  これは根菜類 3 ○          胡瓜       うり科の野菜です 4 5 ○    果物   バナナ  柿   暖色系の色です   G       H         I     J           K     …… 1 計算式   B列を値貼り付け 計算式   C列を値貼り付け  計算式  …… ■A列  :C列に文字入力がある場合「○」が表示されます     {=IF(OR($C1>""),"○","")} ■B-E列:他のシートの任意のセルの値をコピー     {=IF(ISERROR(INDIRECT("'シート名'!セル")),"",INDIRECT("'シート名'!セル"))} *C列の空白の場合は全ての列が空白である(A列の式はそのため) *C列に文字がある場合のB、D、E列の空白には意味がある。 *コピーではなく値の貼り付けを行いたい。 *貼り付け左記の列は飛び飛びである。 *行の長さは可変する。 今までは、A列を「オートフィルタ」で「○」のみ表示させ、B-E列を1列づつH、J、L、N列へ貼り付けていました。マクロもいろいろ考えたのですが、初心者のため応用が出来ません。 関数でもマクロでも頑張ってトライしますのでお知恵を頂けますでしょうか。 PC環境:Win XP / Excel 2003

専門家に質問してみよう