[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2chのread.cgiへ]
Update time : 04/07 15:59 / Filesize : 248 KB / Number-of Response : 1002
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA質問スレ Part6



1 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 19:31:39 ]
ExcelのVBAに関する質問スレです

質問前に 【 >>2-3 】 あたりを良く読むこと

前スレ
pc11.2ch.net/test/read.cgi/tech/1197448064/

★1 質問テンプレ(雛形)は用意しませんが、OSとExcelのバージョンは必ず書きましょう。

★2 ExcelのVBA以外の部分に関する質問はNGです。
   但し、VBA無しでも出来ることだが、あえてVBAでやりたいって物に関してはOK。

★3 ExcelのVBE(Visual Basic Editor)を使うとしても、VBAの分野以外に関してはスレ違いです。
   
 VBAとは、『Visual Basic for Application』の略で
  Application
  ├Workbooks
  |└Workbook
  |  ├Worksheets
  |  |└Worksheet
 というApplication以下のオブジェクトを、VB言語で操作するものを指します。 
 例えExcel付属のVBE(Visual Basic Editor)を利用しようとも、このApplication以下のブックやシート、
 セルやオブジェクト等を操作するもの以外はVBA分野の話ではないので、ここでは聞かないでください。

★4 とりあえず、Excelのインスタンスを作らずにVB6で出来ることは全てスレ違いだと思ってください。

★5 レベルはどうあれ、ここはプログラマ用の板スレです。プログラマとは、自分でプログラムを組み
   コードを書く人の事なので、自分でやるきは全く無く、丸投げしようって人はお断りです。
   ヒントを貰えばあとは自力でなんとかしますって人のみどうぞ。

952 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 21:47:53 ]
>>951
それって、100%ExcelVBAのような気がするけど・・・

953 名前:デフォルトの名無しさん [2008/05/29(木) 09:23:10 ]
共有されていないブックを、"読み取り専用"で開いているメンバーを
VBAで調べるのは不可能ですか。

954 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 09:59:49 ]
VBAにCで言うDefineのようなものはないのでしょうか。
StaticステートメントをDefineのように使うのはおかしくないですか?

955 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 11:02:16 ]
自分の家でつくったユーザーフォームが友達のPCで開いたら
背景色が変わってたんだけどなんで?

俺excel2000
友excel2002

956 名前:デフォルトの名無しさん [2008/05/29(木) 14:31:16 ]
ユーザーフォームの色は、絶対指定と、OSの設定にあわせる方法と
二種類あって、おそらく後者を適用しているのでしょう。

957 名前:デフォルトの名無しさん [2008/05/29(木) 17:38:31 ]
VBAに日本語化パッチを当てるにはどうすればいいのでしょうか

958 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 20:44:31 ]
いろいろと検索してもわからなかったので質問させていただきます。
CSVファイルをエクセルファイルに変換したいのですが、特定の列だけを
文字列として処理を行いたいのです。
また、変換元のCSVファイルの指定をBATファイルを利用したいのですが、
よい手段がわかりませんでした。
なにかいい方法はありませんか??

959 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 21:15:00 ]
Excel総合相談所 69
pc11.2ch.net/test/read.cgi/bsoft/1211605143/

960 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 22:26:56 ]
VB Editor じゃなくて、自分の好きなエディタでマクロを書きたいのんですが、
何かいい方法ありますか?
今はエディタから全コピーしてVBA側に全ペーストしてます;;



961 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 22:52:06 ]
俺は秀丸派でCもJAVAも書いてたんだけど
VBA使ってみてビビった。あれはVBAが
元始にして究極のエディタだと思うんだが。
関数の保管とかしてくれるしもう最高。

962 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 22:52:26 ]
×保管
○補完

963 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:49:04 ]
UserFormで変数を持つにはどうすれば良いですか?
UserFormにTextBoxを貼り付けてTextBox1を変数として使うのもよいのですが
内部で使う変数なので表示はしたくないです。

何をやりたいかというと、このUserFormでOKボタンを押されたことをBOOL変数に記録し、
そして呼び出し元で、OKが押されたかどうか判断したいです。
つまりMFCで言えば
CDialog dlg;
if(dlg.DoModal() == IDOK)
{
UserFormObj.Show
IF UserFormObj.bOk = TRUE THEN
 処理
END IF

見たいな事をしたいです。


964 名前:デフォルトの名無しさん [2008/05/30(金) 00:50:38 ]
UserFormで変数を持つにはどうすれば良いですか?
UserFormにTextBoxを貼り付けてTextBox1を変数として使うのもよいのですが
内部で使う変数なので表示はしたくないです。

何をやりたいかというと、このUserFormでOKボタンを押されたことをBOOL変数に記録し、
そして呼び出し元で、OKが押されたかどうか判断したいです。
つまりMFCで言えば
CDialog dlg;
if(dlg.DoModal() == IDOK) 処理
みたいな。

VBAだと
UserFormObj.Show
IF UserFormObj.bOk = TRUE THEN
 処理
END IF

って感じだと思ってます。


965 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:51:28 ]
すみません。2重カキ子しちゃいました。。>>963は無視してね

966 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:53:35 ]
すみません。2重カキ子しちゃいました。。>>963は無視してね

967 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:54:08 ]
>>964
UserFormにOKプロパティを作る
又は、手軽に標準モジュールにPublic変数を宣言する

968 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:54:10 ]
すみません。2重カキ子しちゃいました。。>>964は無視してね

969 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:56:33 ]
>>967
ありがとうございます。

OKプロパティーというのがあるのですね。勉強になります。


#今日は書き込みがやたらエラーになる(:_:)。スレ汚しすみません。

970 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 00:59:35 ]
>>969
ごめん、UserFormにOKプロパティ作っても、UserFormが閉じたら変数破棄されるからダメだね
Public変数でどうぞ



971 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 14:30:19 ]
VCで作成したDLLを使用してVBAでプログラマしてます。

Private Declare Function DataRead Lib "ExcelVBA.dll" Alias "_CareerDataRead@4" (strFileName As String) As String・・・@

だと「DLLが見つかりません」と出てきます。そんで、Dllのパスをフルパスにしてやると動作するんですが、そすると他のPCで
パスがないので「Dllが見つかりません。」と出てきちゃいます。

できれば、ブックのあるフォルダにDLLをおいて@のように呼び出したいのですが、無理なのでしょうか?

972 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 14:46:15 ]
>>971
つ環境変数

973 名前:デフォルトの名無しさん [2008/05/31(土) 10:10:45 ]
セルに挿入されているハイパーリンクを普通にクリックして、ページ先に飛ぶようなことを
VBAから実行することは可能でしょうか。

あと、ユーザーフォームにハイパーリンクを張ることは可能ですか?

974 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:36:15 ]
例えば、PC起動時にあるソフトをアップデートしたいとき、VBAできたりするんですか?

975 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:46:21 ]
そんなもんメールで告知しろ。

内部的なソフトで、アップデート(上書き)したいだけなら
バッチファイルとスタートアップのショートカットを駆使すりゃいいやん

976 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 15:16:33 ]
VBAからSystem.Text.StringBuilderを使うとき、
オーバロードがどのAppend_数字に対応しているか調べるには
どうすればよい?

977 名前:デフォルトの名無しさん [2008/06/01(日) 18:51:45 ]
エクセル2000で

指定した名前で
CSVファイルで保存する方法ってわかりますか?


978 名前:デフォルトの名無しさん [2008/06/01(日) 19:29:10 ]
>>977
マクロの記録で出てこないか?

979 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 19:37:44 ]
>>977
使ったことないけど、getsaveasfilename でいいんじゃない?

980 名前:側近中の側近 ◆0351148456 [2008/06/01(日) 20:32:46 ]
>>977
(っ´▽`)っ
Excel2000のVBAでCSV保存すると、
日付型はことごとく文字化けするけどなー☆



981 名前:デフォルトの名無しさん [2008/06/01(日) 20:44:27 ]
>>978
>>977
サンクス


982 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 10:24:47 ]
ビジュアル ベーシック フォー 哀川翔

983 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 15:11:45 ]
>>980
普通に読めますが?

984 名前:側近中の側近 ◆0351148456 [2008/06/02(月) 20:44:29 ]
>>983
(っ´▽`)っ
Jan 1 2007とかにならんかね?

985 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 20:51:41 ]
>>984
文字化け?

986 名前:側近中の側近 ◆0351148456 [2008/06/02(月) 20:54:18 ]
>>985
(っ´▽`)っ
これは文字化けじゃないか。
細かいことは気にするな☆

987 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 00:06:08 ]
いわゆるマクロウイルスとかいうやつのコードの書き方教えて。
ウイルスチェックで引っかかるところを見てみたいだけです。

988 名前:デフォルトの名無しさん [2008/06/03(火) 12:49:33 ]
携帯からたどり着きました。スレ違いだったらすみません。
よかったらご教授願います。多分とても簡単な事だと思うのですが…超初心者です。
OSはXP、Excel2003です。


ファイルAの内容を、カメラ機能を使って、ファイルBに取り込もうとしています。
ファイルAのシート名は1〜31までの整数です。(1日1シート)
ファイルB上でマクロを実行した時、実行日に相当するシートの範囲を読むようにしたいのですが、以下のマクロでは、エラーになってしまいます。手直しして頂けないでしょうか。宜しくお願いします。


Sub カメラのリンクを編集()
Dim i As String
i = Day(Date)
ActiveSheet.Shapes("camera").Select
Selection.Formula "='G:\平成20年\[ファイルA.xls]i'!$A$1:$K$60"
End Sub




989 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:02:37 ]
ここは手直しスレじゃないんだが。
せめてどんなエラーになったか位書こうよ。
あー、シート名が変数i(不適当な名前だw)に入っているのなら、文字列を組み立てないとダメだね。
>988では"i"と言う名前のシートを探そうとしてしまう。

990 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 13:03:52 ]
×ご教授
○ご教示



991 名前:デフォルトの名無しさん [2008/06/03(火) 14:55:10 ]
>989、990
文字列を組み立てるというアドバイスの元見直しをして、無事完成しました。
スレ違い失礼しました、「ご教示」ありがとうございました。

992 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 15:38:51 ]
質問したいけど構文ここに書くの面どくせえ

993 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 18:52:12 ]
・・・

If ActiveCell.Column = 6 Then
Range("A1:A10").Copy ActiveCell
Else
MsgBox "ここは駄目"
End If

・・・

これだと6列目を先頭としてA1〜A10のセルをコピーでき、
6列目以外は入力不可でmsgboxが出るのですが、
例えば6列目〜10列目を入力可能にするにはどうしたら良いでしょうか?

994 名前:デフォルトの名無しさん [2008/06/03(火) 22:18:12 ]
オートシェイプの始点やら終点ってどういう単位?

Sheets(2).Shapes.AddLine(Xs, Ys, Xe, Ye).Select

たとえば、こうやって変数で当てて500から520までかけ。次に520から540までかけ
ってやっても線がつながらんのだが。

995 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 01:32:55 ]
>>994
ちゃんとつながるぞ。単位はポイント

Sheets(1).Shapes.AddLine(50, 100, 100, 50).Select
Sheets(1).Shapes.AddLine(100, 50, 150, 100).Select
Sheets(1).Shapes.AddLine(150, 100, 100, 150).Select
Sheets(1).Shapes.AddLine(100, 150, 50, 100).Select


996 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 10:34:25 ]
VBAを使用して作成したExcelファイルを立ち上げようとすると、
「問題が発生したため、Microsoft Excel for Windows を終了します。 ご不便をおかけして申し訳ありません。」
というMicrosoftのエラーになり、Excelが開かなくなってしまいました。
中のモジュールを何とか見る方法はないでしょうか?


997 名前:デフォルトの名無しさん [2008/06/04(水) 20:06:50 ]
あるセルにある文字列が入っています。特定の文字列では無いのですが、
この文字列から、条件を満たす物を抽出したく考えております。

具体的には、「*」 で囲まれた文字列を抜き出したく考えております。
(「」で囲まれた物以外を削除)

調べてみたのですが、このような処理は可能でしょうか。
可能でありましたらば、教えてくださいませ。よろしくお願いします。 

998 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 21:23:50 ]
regexp

999 名前:デフォルトの名無しさん [2008/06/04(水) 22:58:25 ]

pc11.2ch.net/test/read.cgi/tech/1212587819/l50


1000 名前:デフォルトの名無しさん [2008/06/04(水) 23:08:39 ]
10000ならオマエラの人生幸せ
それ以外なら一生不幸





1001 名前:1001 [Over 1000 Thread]
このスレッドは1000を超えました。
もう書けないので、新しいスレッドを立ててくださいです。。。






[ 新着レスの取得/表示 (agate) ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<248KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef