quit123のプロフィール
- ベストアンサー数
- 4
- ベストアンサー率
- 21%
- お礼率
- 100%
- 登録日2005/02/01
- オートフィルのマクロを作りたい
ある列に複数のデータがある場合、その一番上の右隣のセルに数式などを入力後、そのセルの右下の小さい四角をダブルクリックすると、左の列のデータある一番下までオートフィルされますよね。 これのマクロを組みたいのですが、単純に出来ません。 普通通りマクロの記録をすると、実際に入力されていたセル番号までのマクロとなってしまい、データを追加した場合意味が無くなります。 具体的に説明すると、 A1からA10までそれぞれデータがある場合、 B1に数式を入力後、オートフィルでB10までコピー。 これをマクロで組もうとすると、B10までのフィルが組まれてしまい、A11~A20までデータを追加後マクロを実行してもB10までのフィルしか実行されません。 「左の列のデータがあるところまで」というマクロは組めないのでしょうか。
- ExcelのVBAでシートのコピー
Excel2000 Win2000 複数(最低5)のシートが存在するExcelのBookでExcelのVBAを使用して strSheetName="XXX1" intSheetNo = 1 Sheets(strSheetName).Copy after:=Sheets(intSheetNo) とシートのコピーをしています。 この時コピーされたシートのインデックスが2にならないんですが、何故なんでしょ? やりたい事はコピーしたシートの名前をExcelが勝手につけた名前から変更したいんです。 コピーされたシートのインデックスが2になると思っていたので上手く行きません。 Sheets(intSheetNo + 1).Name = "XXX1-1"
- ベストアンサー
- Visual Basic
- INOPII
- 回答数10
- VBA初心者の勉強法とお勧めの書籍
検索はしてみたのですがイマイチ意志に沿う回答がなかったので質問させて頂きます。 私はもうPC使用歴も長くそれなりに(趣味の領域で、ですが)詳しいと思うのですが今までプログラミングに挑戦した事がなかったので今度挑戦しようと思っています。 そこでお伺いしたいのですが知人に「VBAやってみようかと思うんだけど」と聞いてみたところ 「全部の基礎はVBAだからAccess(やExcel)をやるにしてもやっておいて損はない。AccessをやりながらVBAの勉強をしても良いけど取り合えず純粋にVBAだけの勉強をしてみてはどうか」 と言う風な回答を頂きました。これは結構詳しい知人に聞いたのですがこの意見、(勿論信用していないわけではありませんが)どうでしょうか?(AccessをしながらVBAをすべきか、純粋にVBAから勉強し始めるべきかと言う点も含めてお願いします)これ以外でもお勧めの勉強法があると言う方は教えて頂ければと思います。 またAccessにしろVBAにしろそれらを勉強する上で何がしかの書籍も必要になってくるだろうと思いますがお勧めの書籍もあれば教えてください。 では不足している点などありましたら補足いたしますのでよろしくお願い致します。
- ベストアンサー
- Visual Basic
- syu-yu
- 回答数6
- スペルチェックができない
wordで英語のスペルチェックがしたいのですが、「スペルチェックのファイルのMSSpell3.dllまたはmssp232.dllを見つけることができません。」というエラーがでてできません。エッセイの締め切りが迫っているので急いでいるのですが、どなたか詳しい方教えてください。
- Excel VBA、ファイルのオープンについて
どうにも解決が付かず、困ってしまっています、どなたかご回答をお願いいたします。 デスクトップ上にAというフォルダがあり、その中に二つのファイルa.xls、b.xlsがあるとします。 今、a.xlsを開いて、その中に「データ入力表」というシートを作り、そこに入力したデータをマクロを貼り付けたボタン一つでb.xlsへデータ蓄積できるようにしようと考えています。蓄積データが大量になることが予想されるので、別ファイルとしたかったのですが、そうすると、何度もb.xlsにデータを転記する必要があるので、b.xlsはその都度開いたり閉じたりせずに開いたままにしておきたいわけです。 そこで、ボタンに貼り付けるマクロには、 ・最初にデータ転記する時にb.xlsを開く ・以降のデータ転記時にはb.xlsは開いたままにする ように、IF文で分岐を付けたいのですが、最初にファイルを開くのは Set wb = Workbooks.Open("b.xls") で良いわけですが、「b.xlsを開いたままデータを転記する」場合がどうにもうまくいきません。 ファイルをオブジェクト変数にセットするように、 Set wb = Workbook("b.xls") とすると「インデックスが有効範囲にありません」と怒られ、パスの設定か?と思い、 myDir.Workbook("b.xls") とすれば「オブジェクトが必要です」 と断られてしまいます。 この、転記先となるb.xlsを開いたままデータを転記する場合には、オープンしてあるb.xlsはどうセットしたら良いのでしょうか?、というのが今回の質問です。 まだ初心者のため要点が掴みづらい文章となってしまい、お答えしにくいかとは思いますが、どなたかこの混迷状態をご理解頂けた方、ご返答を宜しくお願いいたします。