• 締切済み

【VBA】シートをコピー→任意セル値をシート名に

masnoskeの回答

  • masnoske
  • ベストアンサー率35% (67/190)
回答No.3

[マクロの記録]を使って記録されたコードを開示すれば、的確な回答を得られると思います。

pomu_tsumu
質問者

お礼

ご教示、ありがとうございました。 わたくしの質問の仕方、表現の仕方に問題がありました。 大変申し訳ございません。 こちらを締切り、別で改めて質問させていただきます。 お手数をお掛けしました。 ありがとうございました。

関連するQ&A

  • 【VBA】シートのコピー ~ 値に直す

    大変お世話になります。 VBAのコードについてご教示いただけませんでしょうか。 ■やりたいこと -------------------------------------------------------------------------------- (1) 【原紙】Sheetを、同ブック内の新規シートへコピー (2) 新規シートのシート名を、[セル:B5]の値に変更 (3) 新規シートにコピーされてきた数式を値に変更 ■作成してみたコード -------------------------------------------------------------------------------- Sub SheetCopy1() Worksheets("【原紙】Sheet").Copy Before:=Worksheets("【原紙】Sheet") ActiveSheet.Name = Range("B5").Value Cells.Select Selection.Copy Selection.PasteSpecial Paste:=xlPasteValues Application.CutCopyMode = False End Sub -------------------------------------------------------------------------------- 本日初めてVBAに触れた者が、見よう見まねで『■やりたいこと』を並べたコードのため、やはりエラーになってしまいます。 上記は、どこをどう直せばよろしいでしょうか。 もしくは、そもそも間違っておりますでしょうか。 ご教示いただきたく、何卒よろしくお願いいたします。 ◎もし可能でしたら、併せてご教示ください◎ ---------------------------------------------------------------------------- (1)の動作をさせるために、【原紙】Sheetの任意の場所に”ボタン”を設置するのですが、新規シートにもコピーされるため、そのコピー側のボタンを削除できたら…とも考えていますが、そういう動作も可能でしょうか。

  • 【VBA】シート名をセルに入力すると、そのシートのコピーを実行させるには?

    【条件】 1.仮に「合計」というシートに、追加されるシートのあるデータをコピーしたい。 2.別シートに一定のフォームの集計データが入っているので、このシート名を変更して「A」という名前に変更する。そして、「合計」の入っているブックに移動する。 3.「合計」のA1のセルに「A」という入力をしマクロを実行すれば、「A」のシートの一定のRangeから、合計の任意の場所にコピーをするマクロをつくりたい。 4.このフォームは年間同じフォームで20回発生するがそのたびに、同じような作業が必要となります。 (シートにコピーする作業は、やめて、ブックの別ファイルのあるシートから、ある一定のRangeをコピー元として、「合計」にコピーするでも問題ないです)。 If ~ Elseif ~、myRange = A1で作っても、そのmyRange = A, Elseif = B、と延々につくらなければならない(=たぶんこれは原始的なのだと自認しています)のがはがゆく、 シート名が”文字列(または数字)”の場合、その”文字列(または数字)”をもつ、ブックまたはシートから、コピーを実行というコードをつくりたいのです。 よろしくお願いいたします。

  • VBA 他シートを参照しているセルのコピー

    お世話になります。 以下のシートがあります。 [sheet a]    A     B        C      D     E 1 2004 2005 2006 2007 2008 2 =b!A2 =b!C2 =b!E2 =b!G2 =b!I2 3 10 15 16 4 11 4 12 30 20 9 2 5 =SUM(A3:A4) =SUM(B3:B4) =SUM(C3:C4) =SUM(D3:D4) =SUM(E3:E4) [sheet b] A B C D E  F G H I J 2004 2005 2006 2007 2008 1 あ1 い1 う1 え1 お1 か1 き1 く1 け1 こ1 2 あ2 い2 う2 え2 お2 か2 き2 く2 け2 こ2 ・・・・・・・・・ [sheet a]F列以降に入れるデータは、VBA(マクロ)を使って、別のブックから取り出しています。 (例) F1…=E1+1(E1の数式をコピー) F3,F4…任意の値(別のブックからコピー) F5…=SUM(F3:F4)(E5の数式をコピー) 1行目,5行目の場合は左のセルをコピーして数式を貼り付けると、列が自動的に列が変わりますが、2行目の場合は元のシートを1行おきに参照しているので、単純にコピーしただけでは正しい数式が入りません。 2行目の参照をVBAで作るには、どのようにしたらいいでしょうか。 よろしくお願いします。

  • Excel 違うBookのシートをコピーする

    Excelでわからないことがあり質問させていただきました。 原紙のBookに 資料のBookのシートをコピーさせたいのですが 資料Bookには シートが sheet1~sheet50まであり 原紙のBookにマクロのボタンやフォームを作成し 毎回資料のBookの違うシート名を選択しコピーをさせることは可能なのでしょうか? たとえば 原紙のシートに入力フォームを作り sheet名を入力 → 「コピー」のボタンを押すとコピーができる。 といった感じに・・・ フォームでなくてもリストなんかでもいいのですが・・・

  • EXCELのシート名を同じシート内のセルにコピー

    EXCELのワークシートの名前の変更(例えば「19877」)を入力すると、 同じシート内のあるセル(例えば「B4」)に同じ名前(「19877」)がコピーされる。 入力作業が2回かかるのを1回ですませたい。 あるいは、逆の場合、 シート内のあるセルB4に19877を入力すると、シートの名前が19877になる。 よい方法があれば教えてください。

  • エクセルのシート名をセルにコピーさせたい

    エクセルのシートをそのままコピーしてページ数を増やして新たなシートを作っています。たとえば「Aさん」のシートをコピーして「Bさん」のシートを新しく作るんですが、現在はその作業ごとにシート名の変更とシート内のセルにある名前を変更しています。それは1箇所だけですませてますが、シートの名前を変更するだけで、同時にセル内のデータも一緒に変更できる方法はないのでしょうか?よろしくお願いします。

  • エクセルでシートをコピーしているのですが・・・

    「4日」という名前のシートをコピーして作業しているのですが たまに間違えて「4日(1)」のシートをコピーしてしまうと 『移動またはコピーしようとしている数式またはシートには、移動またはコピー先のワークシートに既にある名前'afda'が含まれています。この名前を使用しますか?』 というエラーメッセージが出ます。 ここで「はい」を選ぶと 延々 上記メッセージが繰り返し表示され、 「いいえ」を選ぶと 『名前の重複』というウインドが出て 『同じ名前がリンク先のシートに定義されています。 変更前:eytw 変更後: 』 と表示されます。 変更後の部分に 何か言葉を入れると 『同じ名前が既に定義されています』 と出ます。 キャンセルを押すと 『移動またはコピーしようとしている数式またはシートには・・・・・・ のメッセージに戻ります。 いつも どうにもならなくなり エクセルを強制終了させてるので 保存していない文書のときは かなり泣けてきます(T_T) 原因や解決方法がありましたら アドバイスよろしくお願いします ちなみに シート名「見本」でコピーしたときも同じエラーになりました。

  • VBAでエラーメッセージが出ないようにしたい

    book1にbook2のセルをコピーして貼り付け、book2を閉じようとしたところ、シートにリンクが張られているのか以下のようなメッセージボックスが出てきます ----ここから----------------- 移動またはコピーしようとしている数式またはシートには、移動またはコピー先のワークシートに既にある名前’xxx’が含まれています。この名前を使用しますか? コピーまたは移動先のシートに定義されている名前を使用する場合は「はい」をクリックします。 数式またはワークシートで参照する範囲の名前を変更する場合は、「いいえ」をクリックし、「名前の重複」ダイアログボックスに新しい名前を入力します。 ---------ここまで------------------ 取り敢えず「はい」をクリックして閉じているのですが、複数回このメッセージが繰り返し出てきて面倒なので、VBAでこのメッセージを出さないようにしたいのですが、どのようにすればよいのでしょうか?

  • シートのコピー

    ブックAとブックBに同じ名前のシートがあります。 普段は、ブックAのシートを利用し、上書き保存しています。 ブックBを開く度に、ブックAのシートがブックBのシートに 自動的に上書きコピーされる方法はありませんか? Excel2013です。

  • エクセルでシートのコピー時の異常

    エクセルでシートの別のエクセルファイルにコピーをする時に、時々、以下の異常がでます。 1.移動またはコピーする数式またはシートには、移動またはコピー先のワークシートに既にある名前‘aaa’が含まれています。この名前を使用しますか? ・コピーまたは異動先のシートに定義されている名前を使用する場合は、[はい]をクリックします。 ・数式またはワークシートで参照する範囲の名前を変更する場合は、[いいえ]をクリックし、[名前の重複] ダイアログボックスに新しい名前を入力します。 [はい]を押すと、 ‘aaa’の部分が変化するだけで、全く同じメッセージがでる。 [いいえ]をおすと、 名前の重複ダイアログが出て、「同じ名前がリンク先のシートに定義されています。」(というかそんな名前のシートはないのですが)とりあえず、変更後に別の名前を入力してみますが、1.の状態に戻るだけで解決しません。 最も、やっかいなのが、この状態になると、ここから抜け出せず、上書き保存すら受け付けてくれないので、最悪、保存前の状態に戻らざるをえないのが困っています。 どなたか、回答よろしくおねがいします。