「マクロが登録されているExcel」が起動中に 「VBScriptで書かれたバッチファイル」を実行することで、 その「マクロが登録されているExcel」のマクロを実行するプログラムを考えています。 GetObjectを用いて「GetObject(,"Excel.Application")」 のようにファイルを指定しない方法では上手く実現できましたが、 GetObject("D:\Book1.xlsm","Excel.Application") のように、 ファイルを指定すると、その後のRunの行で「オブジェクトがありません。」 と表示され上手くいきません。 GetOjbectを用いて、オブジェクト生成時に起動しているファイルを指定して実現したいのですが、どのようにしたら宜しいでしょうか。お力添え頂けますと幸いです。 <行いたいこと> 手順1.次のマクロを標準モジュール(Module1)に登
EXCELで自セルを参照するには まずは、それを実現するために必要な関数は以下のとおり ・ROW ・COLUMN ・ADDRESS ・INDIRECT で、結論は INDIRECT( ADDRESS( ROW(), COLUMN() ) ) ただ、これだけをセルに設定してもあんまり使い道は無い。。 OFFSETなどと組み合わせてあげると利用価値あり。 =OFFSET( INDIRECT( ADDRESS( ROW(), COLUMN() ) ), -1, 0 ) ※1行前の同列のセルの値を参照 「A1」とか「R1C1」などが含まれていないので、カット&ペーストなどをしても狂わないのがいいです。
TimeLeapの動作を変更しました(Version 4.27.2) TimeLeap の不具合を修正した際に、TimeLeapの動作を見直しました。 内容としては 「最新のブックに上書き」 の際に履歴を作成しないよう…
2009年12月10日23:34LinuxRubyLinuxでRubyな環境でExcelを作る方法 それspreadsheet ライブラリを使えば出来るよ!!(=゚ω゚)ノ というわけで、全然知らなかったですがLinux 上でも普通にExcel ファイルを作れるんですねぇ。。Windows 上で win32ole ライブラリとか使わないと出来ないもんだと思ってました。今回紹介する方法では、spreadsheet というライブラリを使うのでまずはさくっとインストールします。sudo gem installspreadsheet で、使うときはこんな感じです。ちょこちょこいじってますが、参考まで。 #excel_base.rb moduleExcelBase require 'rubygems' require 'spreadsheet'Spreadsheet.clien
「俺はェスァイ」 「SIって?」 「お客様のビジネスに最適なソリューションをインテグレートするんだ」 「でたっ、富士通っぽいことば!!」 「標準機能を組み合わせたパッケージは使いにくいからだよっ!!」 ドス、ドス、ドス、バッ 「この仕様書を作ったのは誰だあっ!!」 「Excelの文書がなにかございましたか」 「なぜセルをこんなに細かくした!!計算など必要のない連中がスプレッドシートを使うからだ。馬鹿どもにExcelを与えるな」 「ははっ」 「そんなことを言うからには、文字やフォームを任意のグリッドにレイアウトできて、顧客も当然のように文書ファイルを開けるソフトウェアがいろいろあるんだろうな」 「ぐぬう」 「Excel方眼紙は帳票デザインが大きな割合を占める日本の業態に即したものなんだ」 「とはいえ俺も一般的なExcel方眼紙が最良とは思わない」 「みなさん、明日またここに来てください、本物
Excel 2007 のアドインでリボンメニューを作成できないかと調べてみました。 まず、Excel 2007 で新規文書を作成して、Excel マクロ有効ブック(*.xlsm)として保存します。ここでは、Sample.xlsm として保存します。 次に、Office 2007 文書のリボンメニューを簡単にカスタマイズできる CustomUI Editor Tool をダウンロードしてインストールします。*1 CustomUI Editor Tool インストールが終了したら、CustomUI Editor を起動して Sample.xlsm を開きます。そして、Sample >> Custom Tab を選択し、タブの情報を追加して保存して CustomUI Editor を終了します。*2 自動で追加される情報は以下のようになります。リボンメニューのボタンをクリックすると、Ca
Web制作の仕事をしていると、原稿等をWordとかExcelとかPowerPointでいただくことがありますね。 画像ファイルをいただく時に、 「Excelに貼っつけたやつしかないけどいい?」とかいうこともたまにあります。 そういう時に、いただいたOfficeのファイル形式から画像ファイルを取り出すって作業をすることがあるので、今日、そんな作業があったついでに、普段私が使っている方法をご紹介しようと思いました。 特別なソフトは不要で、標準の機能でできます。 Office2007以前 Office2007以前の方はこの方法で取り出せます。 ファイル > 名前をつけて保存。 [F12] ファイルの種類で、「Webページ(*.htm, *.html)」を選択し、保存。*1 そうすると、ファイルを保存したフォルダの中に、「ファイル名.files」というフォルダが作られていて、その中を開けばOffi
select Date() as 日付部分 ,Time() as 時間部分 ,Now() as 日付と時間1 ,Now as 日付と時間2 ,Year('2010/01/21 1:02:03') as 年1 ,Month('2010/01/21 1:02:03') as 月1 ,Day('2010/01/21 1:02:03') as 日1 ,Hour('2010/01/21 1:02:03') as 時1 ,Minute('2010/01/21 1:02:03') as 分1 ,Second('2010/01/21 1:02:03') as 秒1 ,Now() + 1 as 日数加算1 ,DateAdd('d', 1, Now()) as 日数加算2 ,DateAdd('m', -1, Now()) as 月数加算 ,DateAdd('yyyy', 1, Now()) as 年数加算 ,
現象Microsoft OfficeExcel 2007 形式 (.xlsx) のファイルに挿入したグラフや図形などのオブジェクトに対し、[オブジェクトの位置関係] で次のいずれかのオプションを設定した場合、印刷時に図形が拡大される、または挿入位置が移動することがあります。 セルに合わせて移動するがサイズ変更はしない セルに合わせて移動やサイズ変更をしない なお、Excel 2007 で 97-2003 形式 (.xls) でファイルを保存し、Excel 2003 以前のバージョンでファイルを印刷した場合、本現象は発生しません。また、Office 互換性パックをインストールしたExcel 2003 にて 2007 Office Systems 形式 (.xlsx) ファイルを開いた場合も本現象は発生しません。 回避策 この問題を回避するには、 問題が発生しているオブジェクトに設定され
> 成功しました!!他の端末へのインストールも出来ました。 おお!それは、よかった!(^^) > 再度送付してあげれば相手のアドインは上書きされると思ってよい > のでしょうか? ええ、最初から修正やバージョンアップはあるものとして、考慮して ましたから、その手順で大丈夫ですよ。 それでは、さらに一歩進んで、、 アドイン化したものは、どんな時に実行されるか保証されないので、 注意が必要です。つまり、ActiveSheet がない状態でメニューを クリックすることも、あり得るってことです。この場合、エラーの 発生が予想されますね。 エラーが発生して、「デバッグしますか?」と聞かれたり、デバッグ モードの VBE 画面がでてきたら、初心者の方はビックリしてしまう でしょう。 ですから、コードの冒頭でそれをトラップしてやらなければなりま せんし、VBAプロジェクトも保護しておいた方が良いでしょ
ユーザー定義関数やマクロというのは、コードを書いたそのエクセルファイルにしか適用されません。便利な定義関数やマクロを他のファイルでも使えるようにするのに、いちいちVBEからコードをコピーしていたんじゃあ面倒です。 そこで今回はアドインを自分で作ってエクセル本体にマクロ、定義関数を登録してみましょう。 これをすると ・ 登録されたパソコンのエクセルで常に使える状態になる。 ・ 他のパソコンにも提供したい場合アドインファイルを渡すだけ。 よくネットにもアドインは出回っていますが、大概この方法でアドインを作成しています。 良いアドインが出来ればネットで提供してもいいかもしれません。 範囲指定しているデータの中から値だけをクリア! を作ってみたいと思います。 範囲指定いているデータの中から値だけをクリアする方法(手動) このデータの品名は残して数量と金額だけ消したい時、単純にB4からC8を範囲指定
ExcelVBAのRangeオブジェクトのよく似たプロパティ3つの違い。メモ。 ・プロパティ .Formula .FormulaR1C1 .Value .Value2 .Text ・結果1 (数式/数値) =SUM(A10:A11) =SUM(R[-2]C:R[-1]C) 10000 10000 10,000 ・結果2 (日付) 38113.7673611111 38113.7673611111 2004/05/06 18:25:00 38113.7673611111 2004/5/6 ●数式系 Formula/FormaulaR1C1 基本的に、数式をそのまま設定/取得のためのプロパティ。値の設定も可能。 A1形式/R1C1形式。 FormulaLocal/FormulaR1C1Local は、インターナショナルな人の為のプロパティ。 ●値系 Value/Value2 数値や文字をそのま
.NETアプリケーションのアーキテクチャやフレームワーク、設計に役立つ情報を中心に紹介しています。また業務システムに役立ちそうなユーティリティやノウハウをサンプルコードつきで公開しています。言語はC#とVB.NETを扱っています。 アプリケーションのデータをExcelに出力したいケースがしばしばある。毎回ゼロから作り直すのは面倒であるため筆者が作成したある程度実用的なサンプルコードを公開する。マイクロソフトのサイトによるとExcelにデータを出力する方法はいくつかあるが、サンプルの方法はセル単位に出力する方式である。この方式の場合は、大量のデータを出力する際にパフォーマンスが悪くなる恐れがあるが、セル単位に出力する方式の特徴を生かして、データの型に応じてExcelの書式(数値とか文字列)を変えるようにしている。したがって、Excelに出力したデータをさらに集計して利用するようなケースに適し
http://blogs.timberlandchapel.com/blogs/timberlandchapel/articles/1149.aspx 使用した COM オブジェクトは必ず解放しなければいけない。 COM オブジェクトの解放は,「System.Runtime.InteropServices.Marshal.ReleaseComObject」を使用します。 COM オブジェクトの解放 System.Runtime.InteropServices.Marshal.ReleaseComObject( [COM オブジェクト] ) ループ内で使用する,変数を共有するオブジェクトは都度解放する。 [ReleaseComObject] は,インスタンス化したオブジェクトの数だけ行わなければいけません。 ループ内で [Worksheet] オブジェクトを複数回使用する場合は,変数に格納し
先日書いた 「[IE][C#][COM] IE のセキュリティゾーンをプログラムから操作する」 に、元記事を書かれた Dennis "D.C." Dietrich さんがコメントをくれました。 (わざわざ翻訳して読んでくれたそうです。コメントをもらったのは 6/26 ですが、今まで書く暇がありませんでした) そのコメントにて Discussion of Marshal.ReleaseComObject andits dangers こちらの記事を紹介してくれました。 [厳密な訳ではありません。かなり大雑把ですし、一部英文の意味がよくわからないところもあります。正確なところはぜひ原文をご覧ください] Marshal.ReleaseComObject を使えば望んだときに即座にリリースできる。しかし、COM コンポーネントのマネージド表現である RCW のこれを呼ぶとき、もしこの RCW を
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く