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


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

Excel VBA質問スレ Part5



1 名前:デフォルトの名無しさん [2007/12/12(水) 17:27:44 ]
ExcelのVBAに関する質問スレです

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

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

952 名前:デフォルトの名無しさん mailto:sage [2008/03/07(金) 23:48:02 ]
「クラスを書く習慣をつける」って書いたの俺なんだけどさ(>>935じゃない)
別件(Public云々)にレス付けたつもりだったんだが、曲解した挙げ句に意味不明な粘着を発揮してるキチガイが居るな
なんだよ「Mougにホゲホゲ」ってよ
見えない敵が見えてる系のキチガイの考えることはマジで分からんw

> 934 名前: デフォルトの名無しさん [sage] 投稿日: 2008/03/07(金) 00:08:32
> >>931
> 誰に言ってるの?
> 必要ならつけりゃいいが、必要ない場合もある。
> たとえばシートモジュールでMe.なんてウザイだけ。

> 944 名前: デフォルトの名無しさん [sage] 投稿日: 2008/03/07(金) 11:05:26
> >>935
> おろ?
> 君は>>925>>931じゃなかったの?
> 似たようなこといつも言ってるMougの馬鹿を一人知ってるんだが。
> ってか彼はうるさい割にはいつもシートからしか明示しないがね。

953 名前:デフォルトの名無しさん [2008/03/08(土) 00:04:09 ]
Excel2003
XP SP2

ブックを非表示にして、フォームをタスクトレイに常駐させてタイマー処理は実装可能でしょうか?

教えてエロい人

954 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 04:24:55 ]
YES

955 名前:944 mailto:sage [2008/03/08(土) 04:39:19 ]
>>952
とぼけても無駄無駄w
お前はMougでも感じ悪いけどこっちでも感じ悪いな。

956 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 05:04:10 ]
NO

957 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 08:28:43 ]
とぼけてるのがいるなw

958 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 12:35:40 ]
見えない敵と戦う聖戦士がム板にも湧いてきて、粘着してくるとは思わなんだわ
悪いことは言わないからMougとやらで聖戦に興じてろや
釣りにしてもキモすぎるし、真性だとしても治療に付き合う義務はない

959 名前:デフォルトの名無しさん [2008/03/08(土) 15:06:06 ]
アクティブじゃないシートの選択しているセルの値ってとれないでしょうか?
シート名が特定できれば、一旦アクティブにして値をとって戻るとか出来るのですが
いろいろなシート(名)を対象に出来るようにと思っています
よろしくお願いいたします


960 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 16:48:31 ]
>>958
いらんおせっかい書くからだよ。
つまらん自説を述べるから粘着される。



961 名前:デフォルトの名無しさん mailto:sage [2008/03/08(土) 23:07:05 ]
VBEで挿入できるものに、ユーザーフォーム、標準モジュール、クラスモジュールの3つがあるけど、
クラスモジュールだけ使ったことがない。これってどういう時に使うもんなんです?

Excel2002ですけど。

962 名前:デフォルトの名無しさん [2008/03/08(土) 23:37:13 ]
そのまんまクラスを書くモジュール
VBAだと継承ができないんで、独自イベントを実装したいときとか、
構造体代わりに使うとか、コントロール配列を実現させたいときに
使うぐらいしかないけどね(^ω^;)

963 名前:961 mailto:sage [2008/03/09(日) 08:10:28 ]
んんん、、、判らん w スマソ まだ俺のレベルでは必要ないって事すかね www

964 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 10:25:51 ]
ExcelVBAごときにクラスなんかいらん

965 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 10:39:07 ]
strategy patternを使いたいときとか

966 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 15:28:15 ]
コントロール配列を実現させたいとき=継承
だったと思うから

「継承代わりに使いたいときだけ」
しか使わん

967 名前:デフォルトの名無しさん [2008/03/09(日) 18:58:31 ]
CSVの書き出しに関して、教えてください。

EXCELデータを、カンマ区切りの改行コードつきCSV形式で書き出したいのです。
↓このような感じ
項目1,項目2,項目3,改行コード(vbcrlf)項目1,項目2,項目3・・・
print # でコード記述

データの最後は改行コード(vbcrlf)で終了しなくてはいけないのですが、
そうすると当然のことですが、最後に余分な空白行ができてしまいます。

改行コードで終了するが、最後の空白行はなくす、ということは可能なのでしょうか?

「もう。無理です・・・」と泣きを入れてみたのですが、なんとかしろ、
とのお達しがあり、もし、良い方法があれば伝授いただければ助かります!!

宜しくお願いします。


968 名前:エスパー君登場 mailto:sage [2008/03/09(日) 19:20:08 ]
最後に余分な空白行が出来ているというのは気のせい。

969 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 19:26:29 ]
「余分な空白行」というのは、CRLFCRLFのことだが、もしファイル末尾がそうなっているとしたら、
それはコードのバグ。
ファイルの末尾がCRLFで終わっているなら、余分な空白行など存在しない。

970 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 19:58:51 ]
ぐぐれ 最後の改行 vb



971 名前:デフォルトの名無しさん [2008/03/09(日) 20:08:08 ]
ありがとうございます
「EXCEL VBA 改行コード」で検索していたのですが、
良い方法を見つけることが出来ず、悩んでいました。
頑張って挑戦してみます


972 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 20:55:39 ]
最後の改行と余分な空白行というのは違う意味だと思う

973 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 21:06:19 ]
>>971
ちょっと待て。何をどう挑戦するつもりなんだ?

974 名前:側近中の側近 ◆0351148456 [2008/03/09(日) 21:56:06 ]
(っ´▽`)っ
EOF直前の改行は本来必要なものと考えるが。
たまにEOF直前の改行がないテキストファイルを見るが、あれはどうなの?
ちなみにviだとエラーメッセージが出るぞ。

975 名前:側近中の側近 ◆0351148456 [2008/03/09(日) 22:01:32 ]
(っ´▽`)っ??? >>967のいう「余分な空白行」ってこういうことだよね?

"aaa\r\nbbb\r\nccc\r\n"(\r\nは改行コード)
これを
"aaa\r\nbbb\r\nccc"
にしたいってことでしょ?多分。
「『なんとかしろ、』とのお達しがあり」
ってあるけど、その「なんとかする」理由は何だろうね?
何もないのに言ってるなら、その人にもうちょっと勉強しろって言いたいんだけどね。

976 名前:側近中の側近 ◆0351148456 [2008/03/09(日) 22:02:33 ]
(っ´ω`)っ
おもいっきりスレ違いだね
いきててごめんね

977 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 23:01:20 ]
「余分な空行」という夢オチ

978 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 23:18:21 ]
CSVファイルはRFC 4180の仕様だと、
最後のレコードの後には改行はあってもなくてもいいらしい。
オレの場合は最後のレコードの後には必ず改行付けるけどね。

979 名前:デフォルトの名無しさん mailto:sage [2008/03/09(日) 23:25:11 ]
975のようなテキストをメモ帳か何かテキストエディタで開いたとき、
aaa
bbb
ccc
I ← ここにカーソルが移動できる
ということを「最後に余分な空白行ができてしまう」と言っているんだと思った。
だとしたら、それは最後にCRLFを置いているからだとしか言いようがない。

980 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 01:26:00 ]
excel2003
xp
他のシートの複数セルのSetの仕方がわかりません。

Dim Rng AsRange
Sheets("sheet2").Activate
Set Rng = Range(Cells(1, 1), Cells(2, 2))
Sheets("sheet1").Activate
Set Rng = Nothing
こう書けば一応動くのですがWithを使い
With Sheets("sheet2")
Set Rng = Range(.Cells(1, 1), .Cells(2, 2))
End With
と書いてもsheet1のA1: B2が入ってしまいます。
よろしくお願いします。



981 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 01:40:10 ]
Set Rng = .Range(.Cells(1, 1), .Cells(2, 2))

982 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 02:39:29 ]
Unix文化ではうんたらかんたら

983 名前:デフォルトの名無しさん [2008/03/10(月) 12:48:36 ]
「#N/A」のようなエラーセルの値を変数に入れようとすると
「型が一致しません」というエラーが出るのですが、
例えばエラーセルの値をコンスタントに、「""」として処理するような
事は可能なのでしょうか?

VBAがセルのエラー値をどのように扱っているのか、
msgboxで出すことも出来ないので
困っています。

お知恵拝借できると幸いです。

984 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 13:04:33 ]
トラップ処理すれば

985 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 13:38:14 ]
If(IsError(...

986 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 13:39:51 ]
ttp://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/if_is.htm#is


987 名前:983 [2008/03/10(月) 14:27:26 ]
>>984-986
ありがとうございます。
どちらかの方法でやってみようと思います。

988 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 16:59:57 ]
Ctrl+セルクリックで選択範囲を追加していけますよね
それをVBAで行うにはどうしたらいいですか?
例えば.Cells(i,j)が選択してある状態で、さらにCells(i+10,j)を追加で選択するにはどうしたらいいですか?

.Cells(i,j).Select
hoge
.Cells(i+10,j)Select ←ここで、それまでの選択範囲に追加する形にしたい


989 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 17:23:03 ]
selectionでrange取得
rangeに新cellを追加
追加したrangeをselect

990 名前:988 mailto:sage [2008/03/10(月) 18:07:51 ]
>>989
>rangeに新セルを追加
はどうやって実現するのですか?



991 名前:デフォルトの名無しさん [2008/03/10(月) 19:46:03 ]
Excel2003
XP SP2

結構でかいファイルのI/Oやコピーなどの処理をワーカースレッドで行なうことは可能でしょうか?

992 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 20:46:02 ]
>>990
union


993 名前:デフォルトの名無しさん [2008/03/10(月) 20:52:13 ]
勉強中の者です。初歩的な質問で申し訳ないのですが、お力添えをお願いします。

条件分岐で、"A1"セルに何か入っている場合に実行、
空欄の場合はエラーメッセージを出したく思います。

if range("A1") = true then
msgbox("実行")
else
msgbox("空欄です。")
end if

としてみたのですが、思うように動作致しません。
てっきり、false = 0 、 true は何か要素がある。と頭にあったのでやってみたのですが、
VBAの壁にぶちあたっております。

何卒、ご助力を賜りたく存じます。よろしくお願いします。

994 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 20:57:49 ]
=""

995 名前:デフォルトの名無しさん [2008/03/10(月) 21:21:05 ]
If Range("a1").Value <> "" Then
MsgBox "何か入っている"
Else
MsgBox "空欄"
End If

996 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 21:35:39 ]
false = 0 、 true = -1
0 = false、 0以外 = true


997 名前:デフォルトの名無しさん mailto:sage [2008/03/10(月) 22:03:18 ]
if Typename(Range("A1")) <> "Empty" then 〜
ではどうか

998 名前:デフォルトの名無しさん [2008/03/10(月) 22:47:48 ]
みなさんありがとうございます。
検証してる間にスレ落ちしてしまうと申し訳ないので、お礼だけ先に。

明日検証いたします。
本当にありがとうございました。

999 名前:デフォルトの名無しさん mailto:sage [2008/03/11(火) 08:20:17 ]
.

1000 名前:小倉優子 ◆YUKOH0W58Q mailto:sage [2008/03/11(火) 08:20:37 ]
1000ならジュースでも飲むか



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






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

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

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