!extend:checked:vvvvv:1000:512
スレ立ての際は一行目に
!extend:checked:vvvvv:1000:512
と入れてスレ立てして下さい
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※関連スレ
VBAなんでも質問スレ Part2
http://mevius.2ch.net/test/read.cgi/tech/1432173164/
Access VBA 質問スレ Part1
http://mevius.2ch.net/test/read.cgi/tech/1328536426/
Excel総合相談所 126
https://mevius.2ch.net/test/read.cgi/bsoft/1496487719/
※前スレ
Excel VBA 質問スレ Part49©2ch.net
http://mevius.2ch.net/test/read.cgi/tech/1498410914/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
探検
Excel VBA 質問スレ Part50 [無断転載禁止]©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 7e6d-ffY6)
2017/08/27(日) 12:40:17.57ID:LjjEWylk0312デフォルトの名無しさん (オッペケ Sra3-HalC)
2017/09/23(土) 09:50:48.00ID:3ppsxCRMr313デフォルトの名無しさん (ワッチョイ 0a06-hoCt)
2017/09/23(土) 11:22:54.85ID:ck0qiPja0 VBAにラムダ式を望むなよ
314デフォルトの名無しさん (アウアウカー Sa6b-XBbO)
2017/09/23(土) 12:43:51.76ID:s+vr+Saza315デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/23(土) 12:55:31.84ID:dWsmcDp10 >>312
filterってなに?
filterってなに?
316デフォルトの名無しさん (ドコグロ MMc2-gXon)
2017/09/23(土) 12:58:26.11ID:pHSma+nnM 2ch初心者か?
肩の力抜けよ
肩の力抜けよ
317デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/23(土) 13:44:03.04ID:dWsmcDp10318デフォルトの名無しさん (ワッチョイ 3b6f-HalC)
2017/09/23(土) 13:49:15.21ID:HcxyMvzb0 >>313
HaskellでNLPやってて、小回り利くなと感じた。エクセルの事務作業と相性いい。
>315
エクセルのフィルターとまさに同じ、
例えば[10,2,34,401]から偶数を抜きたければ、
filter (\x -> mod x 2 == 0) [10,2,34,401]などとやる。
桁が三桁のを抜くなら、
filter (\x -> length x == 3) [10,2,34,401]とか。
HaskellでNLPやってて、小回り利くなと感じた。エクセルの事務作業と相性いい。
>315
エクセルのフィルターとまさに同じ、
例えば[10,2,34,401]から偶数を抜きたければ、
filter (\x -> mod x 2 == 0) [10,2,34,401]などとやる。
桁が三桁のを抜くなら、
filter (\x -> length x == 3) [10,2,34,401]とか。
319デフォルトの名無しさん (ワッチョイ 3b6f-HalC)
2017/09/23(土) 13:50:46.59ID:HcxyMvzb0 >>317
まさにそれですね。
まさにそれですね。
320デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/23(土) 14:02:25.24ID:dWsmcDp10 Haskellは三日坊主で終わったとはいえヤバい
321デフォルトの名無しさん (ワッチョイ 466d-XBbO)
2017/09/23(土) 14:09:02.53ID:BetVnWHy0 EXCELはシートにSQLが使えるから場合によってはそっちの方が使えるのでは。
LINQやラムダ式でガッツリやりたいのであれば
もうEXCELの範疇を超えているので
.netでentityFreamworkとか使ってやった方がいいと思うよ。
LINQやラムダ式でガッツリやりたいのであれば
もうEXCELの範疇を超えているので
.netでentityFreamworkとか使ってやった方がいいと思うよ。
322デフォルトの名無しさん (ワッチョイ 3b6f-HalC)
2017/09/23(土) 15:07:07.52ID:HcxyMvzb0 >>321
ありがとう、調べてみます。
ありがとう、調べてみます。
323デフォルトの名無しさん (ワッチョイ 06bf-ufUr)
2017/09/23(土) 17:39:07.55ID:6qmI5T+w0 do while not eofと do until eofは同じですか?
324デフォルトの名無しさん (ワッチョイ 4ab3-UH40)
2017/09/23(土) 18:26:20.13ID:hvHU1vjm0325デフォルトの名無しさん (ワッチョイ 06bf-ufUr)
2017/09/23(土) 18:38:13.30ID:6qmI5T+w0326デフォルトの名無しさん (ワッチョイ 06e4-vS2A)
2017/09/23(土) 19:18:36.34ID:paUCbsLX0 >>324-325
特定の状況では結果が異なるから完全に同一ではないけどな
Sub test()
Dim eof As Variant
eof = Null
Do Until eof
MsgBox "Untilを実行した"
Exit Do
Loop
Do While Not eof
MsgBox "While実行した"
Exit Do
Loop
End Sub
eofがTrue/Falseしかないなら同じ動作だけど、そのどっちでもない場合は同じ動作するとは限らん
Null扱うなら覚えておかないとはまるぞ
特定の状況では結果が異なるから完全に同一ではないけどな
Sub test()
Dim eof As Variant
eof = Null
Do Until eof
MsgBox "Untilを実行した"
Exit Do
Loop
Do While Not eof
MsgBox "While実行した"
Exit Do
Loop
End Sub
eofがTrue/Falseしかないなら同じ動作だけど、そのどっちでもない場合は同じ動作するとは限らん
Null扱うなら覚えておかないとはまるぞ
327デフォルトの名無しさん (ワッチョイ ff3d-hoCt)
2017/09/23(土) 19:31:29.38ID:ljq3IKQ50 Notはビット反転だから真偽値以外だと挙動が変わるわな。
Nullは色んな判定を挟む前にFalseを返す仕組みのはずだから、また問題が違うような気もするけど。
Nullは色んな判定を挟む前にFalseを返す仕組みのはずだから、また問題が違うような気もするけど。
328デフォルトの名無しさん (ワッチョイ 06e4-vS2A)
2017/09/23(土) 19:56:35.16ID:paUCbsLX0329デフォルトの名無しさん (ワッチョイ 4ab3-UH40)
2017/09/23(土) 20:57:28.95ID:hvHU1vjm0 >引数 condition は偽 (False) であるとみなされます。
自分で答えを書いているように思うが。
自分で答えを書いているように思うが。
330デフォルトの名無しさん (ワッチョイ ff3d-hoCt)
2017/09/23(土) 21:10:26.95ID:ljq3IKQ50 俺が「Falseを返す」と表現したのが悪かったな。
「Nullが含まれる式は必ずFalseとして判定される」と書かなきゃいけなかった。
「Nullが含まれる式は必ずFalseとして判定される」と書かなきゃいけなかった。
331デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/23(土) 21:13:02.41ID:dWsmcDp10 関係ないけど Not 1 が False 扱いにならないのは地味に不便だ
332デフォルトの名無しさん (ワッチョイ 06e4-vS2A)
2017/09/23(土) 22:09:48.51ID:paUCbsLX0333デフォルトの名無しさん (ワッチョイ 466d-uAR+)
2017/09/23(土) 22:56:39.62ID:7cmO2hJI0 vbaとExcelで数値とbooleanの変換が変わるのは怖い
334デフォルトの名無しさん (ワッチョイ 238f-PvnN)
2017/09/24(日) 00:06:38.99ID:CZiBIXmW0 きっと〜、あなたは もどってくるだろぅをー
335デフォルトの名無しさん (ワッチョイ af8b-bXGz)
2017/09/24(日) 02:19:39.33ID:3BjqQEbI0 ハイ戻ってきましたぁ!
また調子こいた教えたがりがしゃしゃってんのか?
バカはどいつだ?
また調子こいた教えたがりがしゃしゃってんのか?
バカはどいつだ?
336デフォルトの名無しさん (イモイモ Se66-Dc1X)
2017/09/24(日) 03:07:22.68ID:2VO5tOtwe ∧_∧
( ´・ω・)
( つ旦O
と_)_)
( ´・ω・)
( つ旦O
と_)_)
337デフォルトの名無しさん (ワッチョイ 2b8f-z8ZY)
2017/09/24(日) 08:32:58.01ID:wIEwKcgM0 >>331
Not 1と書くシーンがわからんが、素直に(?)Not TrueとかFalse とか書けば?
Not 1と書くシーンがわからんが、素直に(?)Not TrueとかFalse とか書けば?
338デフォルトの名無しさん (ワッチョイ eb6f-Dc1X)
2017/09/24(日) 08:50:08.02ID:y7FzpsGf0 ドイツの技術は世界一ィィィ
339デフォルトの名無しさん (ワッチョイ 466d-PvnN)
2017/09/24(日) 08:51:55.94ID:sE41CGP30 Not Trueは新しいな
340デフォルトの名無しさん (ワッチョイ 466d-2rpO)
2017/09/24(日) 08:53:02.43ID:sE41CGP30 ツール→参照設定で全てを参照する方法はありますか?
341デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 09:43:55.42ID:SDtHFGLja >>314
ここで言われてる初心者ってのは殆どの場合、他の言語も初心者ってことだぞ。
技術的に初心者だから初心者と呼ばれてる訳じゃない。
自分の画面を見ることが出来ない相手にも伝わるように書くとか、条件を小出しにするとか、相手をロボットか何かと勘違いしてるような初心者以前の問題が有るから否定的な意味で初心者と言われてる。
それにVBAを片手間とか簡単に言うのもどうなんかね?
あまり使ったこと無い奴ほどそういうこと言ってるような気がするね。
内容が何ーつ無くて罵倒しか出来ない初心者君の真価が問われてる。
ここで言われてる初心者ってのは殆どの場合、他の言語も初心者ってことだぞ。
技術的に初心者だから初心者と呼ばれてる訳じゃない。
自分の画面を見ることが出来ない相手にも伝わるように書くとか、条件を小出しにするとか、相手をロボットか何かと勘違いしてるような初心者以前の問題が有るから否定的な意味で初心者と言われてる。
それにVBAを片手間とか簡単に言うのもどうなんかね?
あまり使ったこと無い奴ほどそういうこと言ってるような気がするね。
内容が何ーつ無くて罵倒しか出来ない初心者君の真価が問われてる。
342デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 09:51:58.93ID:gFeQddMX0343デフォルトの名無しさん (ワッチョイ 2b8f-z8ZY)
2017/09/24(日) 10:06:08.42ID:wIEwKcgM0 >>339
ワシにとって Not 1はNot true程度には奇抜や
ワシにとって Not 1はNot true程度には奇抜や
344デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 10:11:23.30ID:gFeQddMX0 Not 1 は普通に使うけど?
LSB だけ変更したい時とか
LSB だけ変更したい時とか
345デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 10:26:12.50ID:J5lzydll0 「Not 1」と直接書くわけじゃなくて0/1を返す関数の返り値に対してのことだろ
346デフォルトの名無しさん (スププ Sdaa-z8ZY)
2017/09/24(日) 10:29:39.61ID:D9ok3B4cd347デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 11:00:50.23ID:gFeQddMX0348デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 11:49:34.08ID:SDtHFGLja349デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 12:09:02.98ID:gFeQddMX0 >>348
スッカスカの内容あるとか言われてもなぁ w
スッカスカの内容あるとか言われてもなぁ w
350デフォルトの名無しさん (ワッチョイ 466d-PvnN)
2017/09/24(日) 12:51:48.98ID:sE41CGP30 >>349
君のレスには内容ないけど、Sa6b-XzByは内容のあるレスをし続けているぞ
君のレスには内容ないけど、Sa6b-XzByは内容のあるレスをし続けているぞ
351デフォルトの名無しさん (ドコグロ MMc2-gXon)
2017/09/24(日) 13:05:01.11ID:/081jZZtM352デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 13:52:50.28ID:SDtHFGLja353デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 15:19:23.40ID:gFeQddMX0 >>352
いったいお前は誰と戦ってるんだよ w
いったいお前は誰と戦ってるんだよ w
354デフォルトの名無しさん (ワッチョイ af8b-bXGz)
2017/09/24(日) 15:25:16.48ID:3BjqQEbI0 このバカよっぽど悔しかったんだなw
支離滅裂だけど悔しさだけは痛い程伝わるよ ID:SDtHFGLjaくん
だが俺にバカを嘲笑うのをやめろと言うのは土台無理な話だ
だってバカは面白いんだものw
これくらいはその小さな脳ミソでも理解出来るよね?おバカさんw
支離滅裂だけど悔しさだけは痛い程伝わるよ ID:SDtHFGLjaくん
だが俺にバカを嘲笑うのをやめろと言うのは土台無理な話だ
だってバカは面白いんだものw
これくらいはその小さな脳ミソでも理解出来るよね?おバカさんw
355デフォルトの名無しさん (ワッチョイ ff3d-hoCt)
2017/09/24(日) 16:43:54.18ID:vk2rgPVS0 この罵倒しかしないヤツはVBAコードの一つも読めないのに何年も前から張り付いている本当の意味での異常者で、
どうも現実の生活で誰にも構ってもらえないからネットで罵倒を繰り返してレスポンスをもらって喜んでいるみたいなので、
各員は餌を与えないでください。いつまでも無意味なレスがついて荒れるだけです。
対策として「晒したコードに対し具体的なコードをつけて指摘しているもの以外は相手にしない」っていうテンプレでも追加してほしい。
どうも現実の生活で誰にも構ってもらえないからネットで罵倒を繰り返してレスポンスをもらって喜んでいるみたいなので、
各員は餌を与えないでください。いつまでも無意味なレスがついて荒れるだけです。
対策として「晒したコードに対し具体的なコードをつけて指摘しているもの以外は相手にしない」っていうテンプレでも追加してほしい。
356デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 16:48:20.79ID:jWeMnfEta357デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 16:53:01.46ID:jWeMnfEta358デフォルトの名無しさん (ワッチョイ 466d-NfCk)
2017/09/24(日) 16:54:20.86ID:sE41CGP30359デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 16:59:29.20ID:J5lzydll0 そんなことより、
0以外の数値をTrue扱いしたいのに、
If Not x が IfNot (x)じゃなくて If (Not x) なのが非常によろしくない
0以外の数値をTrue扱いしたいのに、
If Not x が IfNot (x)じゃなくて If (Not x) なのが非常によろしくない
360デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 17:04:51.18ID:J5lzydll0361デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 17:05:32.05ID:jWeMnfEta >>358
コメントの代わりに
#If 0 Then
は昔よく使ってたなあ。
最近は全く使わなくなった。
Not 1もNot TrueもIf -1 Thenも使ったこと無いな。
こういうのはその人の趣味というか癖みたいな問題だわな。
どれが良いとか悪いとかの問題じゃない。
コメントの代わりに
#If 0 Then
は昔よく使ってたなあ。
最近は全く使わなくなった。
Not 1もNot TrueもIf -1 Thenも使ったこと無いな。
こういうのはその人の趣味というか癖みたいな問題だわな。
どれが良いとか悪いとかの問題じゃない。
362デフォルトの名無しさん (ワッチョイ ff3d-hoCt)
2017/09/24(日) 17:08:48.88ID:vk2rgPVS0 しかし言うほど
If Not [Integer] Then
という書き方をするだろうか?
If Not Book Is Nothing Then
みたいな書き方はするけど、数値でNot使う事自体あんまりない気がする。
If Not [Integer] Then
という書き方をするだろうか?
If Not Book Is Nothing Then
みたいな書き方はするけど、数値でNot使う事自体あんまりない気がする。
363デフォルトの名無しさん (ワッチョイ a71e-NQgr)
2017/09/24(日) 17:09:54.28ID:3B64fACL0 MS系のBASICはずっと昔から「0」と「0以外」で真偽を判定するから、論理式では1もNot 1もありえない
もちろん-1なんかも使わない
俺の知る限り、約40年前に発売されたN-BASICの時代からこの仕様は変わってない
もちろん-1なんかも使わない
俺の知る限り、約40年前に発売されたN-BASICの時代からこの仕様は変わってない
364デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 17:11:40.94ID:gFeQddMX0365デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 17:14:57.98ID:gFeQddMX0366デフォルトの名無しさん (ワッチョイ 466d-NfCk)
2017/09/24(日) 17:20:20.54ID:sE41CGP30367デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 17:29:04.13ID:gFeQddMX0 >>330
> 「Nullが含まれる式は必ずFalseとして判定される」と書かなきゃいけなかった。
ところがどっこい
If 2 Or Null Then 〜 Else 〜 End If
は True (と言うか整数の2)と評価されたりするんだな
0 Or Null は Null になるとか挙動が読めないけど
@Excel 2013
> 「Nullが含まれる式は必ずFalseとして判定される」と書かなきゃいけなかった。
ところがどっこい
If 2 Or Null Then 〜 Else 〜 End If
は True (と言うか整数の2)と評価されたりするんだな
0 Or Null は Null になるとか挙動が読めないけど
@Excel 2013
368デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 17:29:31.46ID:jWeMnfEta369デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 17:30:59.09ID:gFeQddMX0 >>366
True ならわかるけどFalseが0以外の言語ってあったっけ?
True ならわかるけどFalseが0以外の言語ってあったっけ?
370デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 17:34:26.89ID:gFeQddMX0371デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 17:38:18.30ID:jWeMnfEta372デフォルトの名無しさん (ワッチョイ 238f-z8ZY)
2017/09/24(日) 18:38:38.48ID:yAXo7hpi0 >>358
だろうな。ワシも書いたの初めてや。そのレベルの奇抜さって事。
だろうな。ワシも書いたの初めてや。そのレベルの奇抜さって事。
373デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 18:50:18.13ID:J5lzydll0 isSomeStatusが整数を返す関数のとき
If isSomeStatus(x) Then 〜
を使ってて、つい
If Not isSomeStatus(x) Then 〜
と書いてしまうことはない?
If isSomeStatus(x) Then 〜
を使ってて、つい
If Not isSomeStatus(x) Then 〜
と書いてしまうことはない?
374デフォルトの名無しさん (ワッチョイ af8b-lQLN)
2017/09/24(日) 18:54:12.91ID:3BjqQEbI0375デフォルトの名無しさん (ワッチョイ 8a11-gXon)
2017/09/24(日) 20:10:34.74ID:gFeQddMX0 >>373
> isSomeStatusが整数を返す関数のとき
なら
> If isSomeStatus(x) Then 〜
なんて書かないで
If isSomeStatus(x) <> 0 Then 〜
って書く
> isSomeStatusが整数を返す関数のとき
なら
> If isSomeStatus(x) Then 〜
なんて書かないで
If isSomeStatus(x) <> 0 Then 〜
って書く
376デフォルトの名無しさん (ワッチョイ 238f-z8ZY)
2017/09/24(日) 20:15:55.53ID:yAXo7hpi0377デフォルトの名無しさん (ワッチョイ ff3d-hoCt)
2017/09/24(日) 20:21:50.61ID:vk2rgPVS0 使ってるうちに関数の返値型は暗記するし、そもそも一度は確認するだろうから、
真偽値以外でNotをうっかり使うというケースはあんまりなさそう。
というかうっかりNot 整数をやっちゃったぜって事ならイミディエイトウィンドウで確認する癖を付けた方がいいと思う。
真偽値以外でNotをうっかり使うというケースはあんまりなさそう。
というかうっかりNot 整数をやっちゃったぜって事ならイミディエイトウィンドウで確認する癖を付けた方がいいと思う。
378デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 20:22:09.47ID:J5lzydll0 >>375-376
なるほど
なるほど
379デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 20:25:18.45ID:J5lzydll0 組み込みの Is〜 が As Boolean になっているけど
自分の Is〜 は As Long にしたくてそうしてるんだけど、返り値を受けた時の書き方を
統一的に扱えないのが悩みの種なんですよね...
自分の Is〜 は As Long にしたくてそうしてるんだけど、返り値を受けた時の書き方を
統一的に扱えないのが悩みの種なんですよね...
380デフォルトの名無しさん (ワッチョイ 238f-z8ZY)
2017/09/24(日) 20:48:20.98ID:yAXo7hpi0 >>379
それは(失礼を承知で言えば、)ネーミングにセンスが無い。isほにゃららFunctionはBooleanに統一すべし。
それは(失礼を承知で言えば、)ネーミングにセンスが無い。isほにゃららFunctionはBooleanに統一すべし。
381デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 21:04:44.94ID:J5lzydll0382デフォルトの名無しさん (ワッチョイ ff3d-hoCt)
2017/09/24(日) 21:06:12.98ID:vk2rgPVS0 同じ関数名で宣言するとユーザー定義関数の方が優先されるはずだから、
いっそ組み込み系のIs〜を全て再定義してしまえばいいのではないだろうか。
いっそ組み込み系のIs〜を全て再定義してしまえばいいのではないだろうか。
383デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 21:12:51.54ID:J5lzydll0 もちろん「Isなんちゃら〜」の返り値を合計した後で -1 をかければいいんだけど、
Trueが-1であることに依存するのもなんかこう、しっくりこないんですよね。
Trueが-1であることに依存するのもなんかこう、しっくりこないんですよね。
384デフォルトの名無しさん (ワッチョイ 238f-z8ZY)
2017/09/24(日) 21:15:05.28ID:yAXo7hpi0 >>381
うむ、気持ちはわからないでは無いがそれは駄目だ。関数名cntなんとかとかnumなんとかとか「〜の数を返す」ヤツらルールを決めて統一すべし。
うむ、気持ちはわからないでは無いがそれは駄目だ。関数名cntなんとかとかnumなんとかとか「〜の数を返す」ヤツらルールを決めて統一すべし。
385デフォルトの名無しさん (ワッチョイ 238f-z8ZY)
2017/09/24(日) 21:18:21.48ID:yAXo7hpi0 >>383
-1をかける、とかそんな言語仕様に強く依存する(グロテスクな)コーディングはしないほうが良いと思わない?
-1をかける、とかそんな言語仕様に強く依存する(グロテスクな)コーディングはしないほうが良いと思わない?
386デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 21:18:39.00ID:J5lzydll0387デフォルトの名無しさん (ワッチョイ 238f-z8ZY)
2017/09/24(日) 21:24:09.04ID:yAXo7hpi0388デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/24(日) 21:26:50.23ID:J5lzydll0 いや、
大改造はわくわくする
大改造はわくわくする
389デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 22:16:54.54ID:SDtHFGLja >>374
小学生に罵倒されれば誰でも頭に来る。
内容が無ければ尚更だ。
それに、小学生はきちんと躾ける主義でね。
バカにはちゃんとバカと言うべきなんだ。
質問に関係無いことしか書かないバカが人に対してここに来るななどと言う資格があるわけ無いだろう。
そんなことも分からないから小学生と呼ばれるんだ。
小学生に罵倒されれば誰でも頭に来る。
内容が無ければ尚更だ。
それに、小学生はきちんと躾ける主義でね。
バカにはちゃんとバカと言うべきなんだ。
質問に関係無いことしか書かないバカが人に対してここに来るななどと言う資格があるわけ無いだろう。
そんなことも分からないから小学生と呼ばれるんだ。
390デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 22:20:23.66ID:SDtHFGLja391デフォルトの名無しさん (ワッチョイ af8b-Ncsu)
2017/09/24(日) 22:24:54.53ID:3BjqQEbI0392デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 22:29:18.40ID:SDtHFGLja 元の引数の値に合計を入れて返しちゃうのはさすがに変な気がするけど。
393デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/24(日) 22:30:18.80ID:SDtHFGLja394デフォルトの名無しさん (ワッチョイ af8b-Ncsu)
2017/09/24(日) 22:39:03.86ID:3BjqQEbI0395デフォルトの名無しさん (ワッチョイ 3bb1-Dc1X)
2017/09/24(日) 22:52:38.60ID:z5Fx3/zG0 誰か助けてください。
今日一日かけて作ったマクロが、先程エクセルがクラッシュしてしまい自動修復が働き、マクロだけ消失してしまいました。
クラッシュ直後のxlsmファイルをZIPにして「vbaProject.bin」を取り出したりは出来たのですが、
新しいxlsmに取り込んでもやっぱり開くと修復で消えてしまうようで・・・
何とかしてソースコードを取り出すことはできないでしょうか・・。
今日一日かけて作ったマクロが、先程エクセルがクラッシュしてしまい自動修復が働き、マクロだけ消失してしまいました。
クラッシュ直後のxlsmファイルをZIPにして「vbaProject.bin」を取り出したりは出来たのですが、
新しいxlsmに取り込んでもやっぱり開くと修復で消えてしまうようで・・・
何とかしてソースコードを取り出すことはできないでしょうか・・。
396デフォルトの名無しさん (アークセー Sxa3-ZMJA)
2017/09/24(日) 23:42:55.80ID:ALrIElNwx 一日で作れるマクロなら大した分量じゃないだろうしもう一回同じコードを組めば良いんじゃね
397デフォルトの名無しさん (ワッチョイ eb6f-Dc1X)
2017/09/24(日) 23:52:01.97ID:y7FzpsGf0398デフォルトの名無しさん (ワッチョイ 3bb1-Dc1X)
2017/09/24(日) 23:53:04.05ID:z5Fx3/zG0399デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/25(月) 00:00:34.87ID:vsx3Rgi+0400デフォルトの名無しさん (ワッチョイ ff3d-hoCt)
2017/09/25(月) 00:01:40.54ID:AH/NDHtT0 >>398
確かにエクセルは保存をかけても終了するまで保存しないんだよな。たぶんXML形式にして保存する関係からだとは思うけど。
自動バックアップからなら修復の可能性はあるけど、マクロだけ消えたならそのファイル自体は元々マクロ書く前の状態なんじゃないかな。
確かにエクセルは保存をかけても終了するまで保存しないんだよな。たぶんXML形式にして保存する関係からだとは思うけど。
自動バックアップからなら修復の可能性はあるけど、マクロだけ消えたならそのファイル自体は元々マクロ書く前の状態なんじゃないかな。
401デフォルトの名無しさん (ワッチョイ 4ab3-UH40)
2017/09/25(月) 00:02:16.67ID:Ch3TwtIS0 あはは、俺なんかそんなのしょっちゅうだぜW
ノリノリで良さげなコードが書けてる時に限って突然落ちやがるWW
もうね、マメに保存する癖を付けないとどうにもならないよね
ノリノリで良さげなコードが書けてる時に限って突然落ちやがるWW
もうね、マメに保存する癖を付けないとどうにもならないよね
402デフォルトの名無しさん (ワッチョイ 06e4-vS2A)
2017/09/25(月) 00:05:47.41ID:PaZojpJN0 >>367
Orのヘルプに書いてある通り
True Or Null はTrue
False Or Null はNull
で、
CBool(2)はTrue
CBool(0)はFalse
なので、仕様通りの動作ではある
Orはどちらかが真なら真なので、片方が不定でも真だという理屈だな
ショートサーキットしないくせにな
どちらかが偽なら、もう片方に従うから、もう片方が不定なら不定
まあ、理屈として考えれば納得はできる
Orのヘルプに書いてある通り
True Or Null はTrue
False Or Null はNull
で、
CBool(2)はTrue
CBool(0)はFalse
なので、仕様通りの動作ではある
Orはどちらかが真なら真なので、片方が不定でも真だという理屈だな
ショートサーキットしないくせにな
どちらかが偽なら、もう片方に従うから、もう片方が不定なら不定
まあ、理屈として考えれば納得はできる
403デフォルトの名無しさん (ワッチョイ 3bb1-Dc1X)
2017/09/25(月) 00:07:49.88ID:kbDcK8g50 >>396
朝から書き続けてたから1000行以上ある。かなりつらい。
何度同じような書いてもクラッシュするので原因を調査していたのですが、判明したので報告します。
Windows10 / Excel 2016
1.一番最初のコーディング中にクラッシュした原因
※そもそも取得のために引数にした配列を直接書き換えようとするのが間違いか。
↓下記変数を関数で生成
Dim fl() as string
call GetFileList(fl)
-----
function GetFileList(ByRef fl() as string)
Redim fl(1 to 123,1 to 1)
end function
-----
↓この構文を入力してEnter押すと必ずエクセルがクラッシュする。
ReDim Preserve fl(, 1 To 2)
↓正しいコード。これならクラッシュしない。
ReDim Preserve fl(LBound(fl) To UBound(fl), 1 To 2)
次レスへ続く
朝から書き続けてたから1000行以上ある。かなりつらい。
何度同じような書いてもクラッシュするので原因を調査していたのですが、判明したので報告します。
Windows10 / Excel 2016
1.一番最初のコーディング中にクラッシュした原因
※そもそも取得のために引数にした配列を直接書き換えようとするのが間違いか。
↓下記変数を関数で生成
Dim fl() as string
call GetFileList(fl)
-----
function GetFileList(ByRef fl() as string)
Redim fl(1 to 123,1 to 1)
end function
-----
↓この構文を入力してEnter押すと必ずエクセルがクラッシュする。
ReDim Preserve fl(, 1 To 2)
↓正しいコード。これならクラッシュしない。
ReDim Preserve fl(LBound(fl) To UBound(fl), 1 To 2)
次レスへ続く
404デフォルトの名無しさん (ワッチョイ 3bb1-Dc1X)
2017/09/25(月) 00:12:44.30ID:kbDcK8g50 >>403
2.クラッシュした後にマクロが消失した理由
とあるモジュール(*.bas)を取り込むと、上書き保存は問題なくできるのだが次回ブックを開いた時必ず「vbaProject.bin」が消失することが判明した。
クラッシュしなくなるまでの手順
@新規エクセルブックに移行
Aインポートしたbasのコードだけをコピーして新規モジュールに貼り付け
B下記のような定数があったので、FileSystemObjectのクラスと競合しないよう別の名前に変更
Enum flGetMode
File = 1
Folder = 2
All = 3
End Enum
↓
Enum flGetMode
flFile = 1
flFolder = 2
flAll = 3
End Enum
>>399
そうだな・・・今度からエクセル落とす前にモジュールだけ取り出すことにするわ。
>>400
エクセル、マジ、怖い EMK
>>401
今回のはマメに保存するというより、ブックを別ファイルにバックアップしないと対処できないかな。
今度から毎時間スナップショット撮るようにするわ
2.クラッシュした後にマクロが消失した理由
とあるモジュール(*.bas)を取り込むと、上書き保存は問題なくできるのだが次回ブックを開いた時必ず「vbaProject.bin」が消失することが判明した。
クラッシュしなくなるまでの手順
@新規エクセルブックに移行
Aインポートしたbasのコードだけをコピーして新規モジュールに貼り付け
B下記のような定数があったので、FileSystemObjectのクラスと競合しないよう別の名前に変更
Enum flGetMode
File = 1
Folder = 2
All = 3
End Enum
↓
Enum flGetMode
flFile = 1
flFolder = 2
flAll = 3
End Enum
>>399
そうだな・・・今度からエクセル落とす前にモジュールだけ取り出すことにするわ。
>>400
エクセル、マジ、怖い EMK
>>401
今回のはマメに保存するというより、ブックを別ファイルにバックアップしないと対処できないかな。
今度から毎時間スナップショット撮るようにするわ
405デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/25(月) 03:13:19.89ID:eYOvRkV+a406デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/25(月) 03:21:24.47ID:kQfKGPg6a407デフォルトの名無しさん (アウアウカー Sa6b-XzBy)
2017/09/25(月) 03:26:59.82ID:kQfKGPg6a408デフォルトの名無しさん (ワッチョイ 8aaa-Dc1X)
2017/09/25(月) 06:57:33.96ID:vsx3Rgi+0 ExcelがクラッシュするならWord VBAで書けばいいのに
(半分マジ)
(半分マジ)
409デフォルトの名無しさん (ワッチョイ 0a06-hoCt)
2017/09/25(月) 07:18:55.09ID:CDmpdlRb0 >>399
ファイルのエクスポートってのは知ってるけど「モジュールごと」ってのは具体的にどうするんです?
ファイルのエクスポートってのは知ってるけど「モジュールごと」ってのは具体的にどうするんです?
410デフォルトの名無しさん (ワッチョイ 466d-uAR+)
2017/09/25(月) 07:24:22.76ID:dVWzg8Zn0 スプレッドシートで開いてみるとか
ファイル壊れてたらダメ化
ファイル壊れてたらダメ化
411デフォルトの名無しさん (ワッチョイ 06e4-XBbO)
2017/09/25(月) 07:25:07.82ID:5kCjH3U30 >>341
はっきり言おう
VBA自体が間口が広いために初心者が扱い易い言語ではあるが
大きなシステムやWeb系には向いていないために
全体から見れば「VBAの上級者」というのは
所詮井の中の蛙に過ぎない。
自称VBA上級者よりVBAの上級者じゃなくても
JAVAや.Netの知識を多少なりとも持っていて
そっちも出来るという方が基本的に給料が高いというのはそのせい。
つまりここで初心者がどうのと煽っている奴も
所詮は初心者の域を超えていない。
初心者が初心者を煽ってるだけ。
もっとも俺も自分を初心者じゃないなんてとても
おこがましくて言えないけどね。
はっきり言おう
VBA自体が間口が広いために初心者が扱い易い言語ではあるが
大きなシステムやWeb系には向いていないために
全体から見れば「VBAの上級者」というのは
所詮井の中の蛙に過ぎない。
自称VBA上級者よりVBAの上級者じゃなくても
JAVAや.Netの知識を多少なりとも持っていて
そっちも出来るという方が基本的に給料が高いというのはそのせい。
つまりここで初心者がどうのと煽っている奴も
所詮は初心者の域を超えていない。
初心者が初心者を煽ってるだけ。
もっとも俺も自分を初心者じゃないなんてとても
おこがましくて言えないけどね。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- NY円、一時1ユーロ=180円台まで下落…1999年のユーロ導入以来初 [蚤の市★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★3 [蚤の市★]
- 【外交】日中関係悪化、長期化の様相 2012年には自動車輸出80%減も ロイター★3 [1ゲットロボ★]
- 「どうしようもない」 ため息つくアジアの玄関口 中国の訪日自粛で−福岡市 [蚤の市★]
- NHK、受信料の未払い世帯に督促強化へ 民事手続きの新組織を設置 差し押さえなどの強制執行も ★2 [1ゲットロボ★]
- 橋下徹氏 外務省幹部の訪中受け「口だけ番長」へ痛烈指摘 「喧嘩は日本の完敗…なんとかっこ悪い日本か」★2 [冬月記者★]
- んなっても良いお🏡
- 【悲報】高市早苗を妄信している今の日本人見ると80年前も市民は進んで戦争協力してたんだって理解出来るよね🥺 [616817505]
- 【超悲報】中国への武力行使、世論調査で「賛成」「どちらかといえば賛成」48.8% 「反対」「どちらかといえば反対」の44.2%を上回る [314039747]
- 日本人、歴史も経済も分からず貧乏に耐えかねて第二次日中戦争を求めてしまう…ヤバイよ [819729701]
- 【朗報】中国との戦争、世論調査で「賛成」が「反対」を上回るwwwwwwwww
- 識者「『フリーパレスチナ』とかイキってる連中が台湾の話になると『中国を怒らせるな!』ってなる。ほんと左翼の正義って薄っぺらい」 [279254606]
