- 1 名前:デフォルトの名無しさん mailto:sage [2012/08/19(日) 17:01:50.51 ]
-
ExcelのVBAに関する質問スレです ★1 質問テンプレ(雛形)は用意しませんが、OSとExcelのバージョンは必ず書きましょう。 ★2 ExcelのVBA以外の部分に関する質問はNGです。 但し、VBA無しでも出来ることだが、あえてVBAでやりたいって物に関してはOK。 ★3 ExcelのVBE(Visual Basic Editor)を使うとしても、VBAの分野以外に関してはスレ違いです。 VBAとは、『Visual Basic for Applications』の略で Application ├Workbooks |└Workbook | ├Worksheets | |└Worksheet というApplication以下のオブジェクトを、VB言語で操作するものを指します。 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。 ★4 とりあえず、Excelのインスタンスを作らずにVB6で出来ることは全てスレ違いだと思ってください。 ★5 レベルはどうあれ、ここはプログラマ用の板スレです。プログラマとは、自分でプログラムを組み、 コードを書く人の事なので、自分でやるきは全く無く、丸投げしようって人はお断りです。 ヒントを貰えばあとは自力でなんとかしますって人のみどうぞ。 ★6 わからなければとりあえず「マクロの記録」(Alt, T, M, R) 前スレ: Excel VBA 質問スレ Part25 toro.2ch.net/test/read.cgi/tech/1341722983/
- 170 名前:デフォルトの名無しさん mailto:sage [2012/09/04(火) 19:26:37.09 ]
- >>169
メールのtoフィールドが255バイト以下ってのはRFCで決まってたはず それ以上送りたい場合はtoフィールド自体の数を増やせばいいんだけど、 受け取った側から見るとあんまり気分の良い物じゃないのでBCCなどを使った方がいい
- 171 名前:桃白白 [2012/09/04(火) 20:06:56.45 ]
- >>170
マジで!? メールアドレスの最大の長さが255文字でTOが複数のアドレスを含むことが できるとするなら理屈としてはTOは255文字以上を許容しないといけないんじゃね? >>151 配列でアドレスを指定できるんじゃね? Application.Dialogs(xlDialogSendMail).Show Array("桃白白さん", "ブルマさん") みたいにして
- 172 名前:153 mailto:sage [2012/09/04(火) 20:29:08.45 ]
- >>166
まじかよVBA糞だな首吊ってきます
- 173 名前:デフォルトの名無しさん mailto:sage [2012/09/04(火) 23:30:33.17 ]
- >>169
自作鯖ならsendmailmaxなんちゃらみたいな設定がたぶんhtod.confとかにあると 思ったけど to Cc Bccでの上限数はあまり変わらないんじゃないか
- 174 名前:デフォルトの名無しさん mailto:sage [2012/09/05(水) 00:43:55.42 ]
- >>172
VBAがというか大本のVBがそういう仕様だからなぁ つか知らなきゃそう書いちゃうよな
- 175 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 12:02:31.87 ]
- 質問です。
For shapeCounter = 0 To .Shapes.Count --- (※) Dim tempShape As Shape Set tempShape = mySheet.Shapes(shapeCounter) (略) Next このようにShapeオブジェクトを取得していたのですが、 別のマシンで動作させると3行目で停止してしまいます。 そこで、(※)を For shapeCounter = 1 To .Shapes.Count + 1 に変えると正常に動作しました。 officeのバージョンによってこのような事が起こるのでしょうか? もしそうだとしたらどこかにその情報のソースは無いでしょうか?
- 176 名前:デフォルトの名無しさん [2012/09/07(金) 12:47:57.33 ]
- ExcelのVBAについて学ぼうと思っています。
まだまだ初心者なので、VBAについてお詳しい方、 ExcelのVBAでのテーブル作成方法を教えてください。
- 177 名前:デフォルトの名無しさん [2012/09/07(金) 12:51:57.92 ]
- ↑入力項目は@入力年月日A転出入りフラグ1、転入2、転出(選択すると自動的にカウントアップ)B氏名C新住所D性別
E年齢F生年月日F職業G男性人口±H女性人口±I全体の人口±といったところです。 このデーターを格納し帳票に飛ばしカウントアップしてデイリー分の男性、女性の転出、転入を出力データとしてまとめ 総人口数を求めるようにしたいのですが。
- 178 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 13:06:18.19 ]
- 馬鹿には無理
- 179 名前:桃白白 [2012/09/07(金) 13:34:55.59 ]
- >>175
Excel 2007 で Shapes オブジェクトのインデックスに不正な値 0 を指定してもエラーにならない support.microsoft.com/kb/2699812/ja これかな。 For Toでぐるぐるするなら For shapeCount = 1 To .Shapes.Count にしないと0からCountまでぐるぐるしたらCount + 1のShapeが存在することになっちゃう。 Shapesオブジェクトの実装はたぶん線形リストで 序数が大きくなるほどアクセスするのに時間がかかるから For Eachでぐるぐるしたほうがいいよ。 For Each tempShape In .Shapes Next
- 180 名前:桃白白 [2012/09/07(金) 13:39:04.73 ]
- >>176
データベースがメインになるんなら Accessでやっちゃった方がよくね?
- 181 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 13:58:48.61 ]
- access高いから避けたい
- 182 名前:桃白白 [2012/09/07(金) 14:17:45.26 ]
- >>181
データベースに何を使うかは決まってんの? MDB?
- 183 名前:デフォルトの名無しさん mailto:sage [2012/09/07(金) 15:37:49.26 ]
- PostgreSQLが良い
- 184 名前:桃白白 [2012/09/07(金) 19:38:37.15 ]
- >>183
ゾウさんのやつな、かっけーよな
- 185 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 02:27:32.71 ]
- 教えて下さい。
excel vba でIE object のコントロールで ajaxを起動できますか? fireeventでjavascriptはわかったのですが selectにonclickがなくajaxでload window しているものがありどう呼び出せばよいか 悩んでます
- 186 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 04:45:25.16 ]
- ★3 ExcelのVBE(Visual Basic Editor)を使うとしても、VBAの分野以外に関してはスレ違いです。
VBAとは、『Visual Basic for Applications』の略で Application ├Workbooks |└Workbook | ├Worksheets | |└Worksheet というApplication以下のオブジェクトを、VB言語で操作するものを指します。 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。 ★4 とりあえず、Excelのインスタンスを作らずにVB6で出来ることは全てスレ違いだと思ってください。
- 187 名前:デフォルトの名無しさん [2012/09/08(土) 08:35:29.78 ]
- 重ねたバケツが抜けないのですが、何か良い方法はあるでしょうか?
- 188 名前:デフォルトの名無しさん [2012/09/08(土) 09:29:19.83 ]
- 外側のバケツのみ熱します
- 189 名前:187 [2012/09/08(土) 09:30:46.59 ]
- どうやって熱しますか?
- 190 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 09:41:15.34 ]
- 油を注いで熱します
- 191 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 09:48:31.79 ]
- >>185
的外れかもしれないけどブックマークレットで呼ぶとか? shokai.org/blog/archives/1234
- 192 名前:デフォルトの名無しさん mailto:sage [2012/09/08(土) 20:57:56.13 ]
- >>177
DAOとかADOとかでExcelをRDBみたいにSQLで扱えるから そういう感じでやれば良いんでね やり方はググって好きな方法選んでくれ
- 193 名前:桃白白 [2012/09/09(日) 01:50:11.99 ]
- みんな聞いて。桃白白のExcelの使用期限が終わりそう、繰り返す、桃白白のExcelの使用期限が終わりそう。
- 194 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 02:17:54.45 ]
- Excelって使用期限が設けられているライセンス体系もあったんか
次買うときはケチらずに無期限ライセンスのを買えよ
- 195 名前:桃白白 [2012/09/09(日) 02:27:17.22 ]
- >>194
桃白白貧乏だから買えないの。寄付する? するんだったら桃白白はその好意を決して断らない ことをここに誓う用意があるけど?
- 196 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 04:13:41.72 ]
- パソコンをリカバリすればまた体験版が使えるようになるよ
- 197 名前:デフォルトの名無しさん [2012/09/09(日) 07:12:31.16 ]
- >>195
互換Office使えばタダだよ VBA使えないけど
- 198 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 07:31:11.37 ]
- 貧乏だけど知識が豊富で頭も良くて有用な回答者にならOfficeくらい寄付してもいいが、
貧乏な上に知識も多少の回答は出来るが並以下レベルで、頭の回転も弱い奴となると、 べつに回答者を続けてくれなくても誰も困らないから、Excelの使用期限と共に消えてくれて 一向に構わないな
- 199 名前:桃白白 [2012/09/09(日) 10:38:47.13 ]
- ∧∧
/⌒ヽ) i三 ∪ ○三 | (/~∪ 三三 三三 三三三
- 200 名前:デフォルトの名無しさん [2012/09/09(日) 15:24:00.49 ]
- >>199
俺も貧乏だから寄付しないけどタオパイパイ嫌いじゃないよ これからは回答せずに にぎやかしでAA貼ってりゃいいじゃん
- 201 名前:デフォルトの名無しさん mailto:sage [2012/09/09(日) 15:26:03.47 ]
- 私の声がデムパになって
波になってあなたへ向かってく 私の歌がデムパになって 波になってあなたへ響いてく 私の愛がデムパになって 波になってあなたへ届いてく 私の電子回路が短絡する前に Electric LOVE Electric LOVE (∩ ゚д゚) アーアー この気持ちあなたに届くかな
- 202 名前:デフォルトの名無しさん [2012/09/10(月) 11:09:37.38 ]
- VBAであるセル範囲をコピペして他のシートに貼り付けたとき
図のオブジェクトがどういうわけかコピペされないんです。 どうすればこの図のオブジェクトも正しくコピペされて他のシートにも表示させるようにできますか?
- 203 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 11:21:30.08 ]
- 馬鹿には無理
- 204 名前:202 [2012/09/10(月) 11:31:04.49 ]
- >>203みたいな馬鹿には回答は無理なのは分かりますよ。
- 205 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 11:37:58.19 ]
- ただ図がセル範囲からはみ出してるだけじゃないのか?
- 206 名前:202 [2012/09/10(月) 11:40:24.57 ]
- いえ、しっかりセル範囲内におさまっています。
列は3、行は20くらい、 図はちょうどど真ん中あたりにあり、1つのセルと同じくらいの大きさなのに。
- 207 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 14:03:16.08 ]
- 2007以降だっけ、図形や画像のオブジェクト仕様が変わってるから
その影響じゃね確かめてないけど
- 208 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 14:23:25.83 ]
- >>202
コードも貼らずに・・・VBAでコピペといっても丸ごと・値だけ・図だけ・云々 値だけコピぺのコードになっていないか?
- 209 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 15:30:15.55 ]
- 再現できたよ
import os import win32com.client def test_auto_shape(filename): xl = win32com.client.Dispatch('Excel.Application') xl.Visible = True try: book = xl.Workbooks.Open(filename) sheet = book.Worksheets(2) rs = "A10:D20" sheet.Select() sheet.Range(rs).Select() xl.Selection.Copy() sheet = book.Worksheets(1) sheet.Select() sheet.Range(rs).Select() xl.Selection.PasteSpecial() finally: xl.Workbooks.Close() xl.Quit() if __name__ == '__main__': test_auto_shape(os.path.abspath(u'autoshape_copy.xls'))
- 210 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 15:36:44.24 ]
- きもっ
- 211 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 15:39:18.22 ]
- こっちのコードなら図形も正しくコピペされたよ
import os import win32com.client def test_auto_shape(filename): xl = win32com.client.Dispatch('Excel.Application') xl.Visible = True try: book = xl.Workbooks.Open(filename) sheet = book.Worksheets(2) rs = "A10:D20" sheet.Range(rs).Copy(book.Worksheets(1).Range(rs)) finally: xl.Workbooks.Close() xl.Quit() if __name__ == '__main__': test_auto_shape(os.path.abspath(u'autoshape_copy.xls'))
- 212 名前:デフォルトの名無しさん [2012/09/10(月) 15:43:04.57 ]
- Select って恥ずかしいよね
- 213 名前:デフォルトの名無しさん mailto:sage [2012/09/10(月) 15:50:50.02 ]
- なんでVBAのコードにしないんだろう?
- 214 名前:デフォルトの名無しさん mailto:sage [2012/09/11(火) 11:33:18.80 ]
- 中二病だから
|

|