- ベストアンサー
VBA初心者のためのシートのコピーと名前変更の方法
- VBA初心者の方がExcelのシートをコピーして名前を変更する方法を教えてください。
- また、特定のセルに値を入れる方法も教えていただきたいです。
- シートの名前をリストから抽出し、順番にコピーしたシート名にする方法も教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>出来れば、例のコードをつけて頂けたら幸いです。。。 ここらでコードを教えたところで、 コマンドからの意味は調べていけばわかりますが、 >Excelのセルから値のとり方が不明 >リストから順番に取る方法 こういう機能からコマンドを探す方法はわからないままでしょう。 初心者はコードを求めがちですが、作業の進め方が不十分です。 コードだけ教える人も悪いです。ですから、必ず解説をもらうこと。 解説しない人の回答は無視してもいいくらいです。 http://www.voicechatjapan.com/excelvba/VBArei2.htm http://www.asahi-net.or.jp/~ef2o-inue/menu/menu04.html http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_cell.html こういうところをひたすら探す。 探す癖をつける。 コマンドの仕様、使い方は、 徹底的に探せば時間が解決するものです。ヘルプもある。 アルゴリズム、ロジック等は 自分で考えてみないことにはわからないことが多いです。 自己解決できるようにしましょう。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
今日VBAを始めて、今日何かをやりたいから、教えろでは無茶だ。 「マクロの記録」を勉強して、徐々にでも勉強すること。 少なくとも勉強して6ヶ月ぐらいたたないと、聞かずに独力で課題はこなせないだろう。 ソフトだから他人に教えてもらっても、他人は被害は無いと思うかもしれないが、他人に聞けばタダで仕舞いという考えは、知的活動の評価を下げるものだ。 ものや金だったらそうは行くまい。 ーーー >コピーをして出来たシートの名前を変える マクロの記録を採ると Sub Macro4() Sheets("Sheet1").Select Sheets("Sheet1").Copy After:=Sheets(4) Sheets("Sheet1 (2)").Select Sheets("Sheet1 (2)").Name = "aaaa" End Sub >Sheets(4) はシートタブをみて左から4番目のシートの意味。 > Sheets("Sheet1 (2)")はSheet1 (2)と言う名前のシートという意味。 >コピーしたシートの特定のセルに値を入れる 上記のシートはWorksheets(”aaaa”).Cells(i,j)="bbb" これでi行j列セルに値bbbを入れる。 ーーー >リストから順番に抽出し、30回この処理を繰り返す 30回の処理のくり返し For i=1 to 30 Next i しかしこれでは役にたたないだろうが。 >Excelのセルから値のとり方が不明。 For i=1 to 29 s=cells(i,"A") Msgbox s Nexr i をやってA列の値を表示(取得)してみて勉強したら。
- layy
- ベストアンサー率23% (292/1222)
「新しいマクロの記録」を行えば、コードは生成されるので、1回分は出来上がります。 A1、でやった結果 A2、でやった結果 を比較し参照セル位置、シート位置が違うとか見ながら全体像をつかむ。 セル30個繰り返したいならFOR文使う。 セル固定値を変数化する。 やりたいことを命令にしたいなら、機能別にコードがわかるページを見つける。別途返信します。