探検
Excel VBA 質問スレ Part51
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (スププ Sd4a-O827)
2017/11/08(水) 11:26:30.13ID:+KUB1/9hdスレ立ての際は一行目に
!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 質問スレ Part50
http://mevius.2ch.net/test/read.cgi/tech/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured 👀
Rock54: Caution(BBR-MD5:0be15ced7fbdb9fdb4d0ce1929c1b82f)
736デフォルトの名無しさん (ワッチョイ 637b-7LW1)
2017/12/26(火) 07:54:39.17ID:6qOsufVw0737デフォルトの名無しさん (アウアウイー Sa87-cQ+C)
2017/12/26(火) 08:20:51.65ID:upqov7ALa738デフォルトの名無しさん (ワッチョイ ff23-pwf+)
2017/12/27(水) 09:27:07.83ID:58xyBvha0 >>719とか>>730とかのコードで意味わかんないところがいくつかある
(コードが間違ってるって意味じゃなくて、こっちの知識が足りなくて理解が追い付かないって意味です)
まず>>719は
なんでコレクションを宣言してるのか?
しかもなぜ宣言したのに使わないのか?
変数eは何のために使ってるのか?
ファイルのパスをsplitで分割してるけど、
ファイル名だったらinstrrevで\を探したほうが話が早いんじゃないか?
等々
>>730は
ループの中でdim使うのは大丈夫なの?
複数回宣言したらエラーになりそう
後、一番知りたいのが
If strFolder <> "." And strFolder <> ".." Then
これ、どういう意味なのか解説をお願いしたい
(書いてる人たちにケチつけてるんじゃなくて、本当に分らない事を教えて欲しいだけです)
どなたか教えてください、よろしくお願いします
(コードが間違ってるって意味じゃなくて、こっちの知識が足りなくて理解が追い付かないって意味です)
まず>>719は
なんでコレクションを宣言してるのか?
しかもなぜ宣言したのに使わないのか?
変数eは何のために使ってるのか?
ファイルのパスをsplitで分割してるけど、
ファイル名だったらinstrrevで\を探したほうが話が早いんじゃないか?
等々
>>730は
ループの中でdim使うのは大丈夫なの?
複数回宣言したらエラーになりそう
後、一番知りたいのが
If strFolder <> "." And strFolder <> ".." Then
これ、どういう意味なのか解説をお願いしたい
(書いてる人たちにケチつけてるんじゃなくて、本当に分らない事を教えて欲しいだけです)
どなたか教えてください、よろしくお願いします
739デフォルトの名無しさん (ワッチョイ ff1e-bqMz)
2017/12/27(水) 09:45:06.41ID:fOQst04i0740デフォルトの名無しさん (ワッチョイ ff1e-bqMz)
2017/12/27(水) 10:22:00.13ID:fOQst04i0 寝ぼけて書いてたからめちゃくちゃだな^^;
c:\test\test1> というフォルダがあったとしてそこで
c:\test\test1>cd .. と打てば
c:\test> と親ディレクトリ(フォルダ)に移動する
c:\test\test1> というフォルダがあったとしてそこで
c:\test\test1>cd .. と打てば
c:\test> と親ディレクトリ(フォルダ)に移動する
741デフォルトの名無しさん (アウアウイー Sa87-cQ+C)
2017/12/27(水) 10:45:52.46ID:90Vjgj1Fa >>738
ループ内でDimしてもエラーにはならないよ
その都度メモリが割り当てられるだけじゃないかな
フォルダ名の"."と".."は相対パスじゃなかったかな
一個上と二個上の親フォルダだったと思う
間違ってるかもしれないから調べてね
ループ内でDimしてもエラーにはならないよ
その都度メモリが割り当てられるだけじゃないかな
フォルダ名の"."と".."は相対パスじゃなかったかな
一個上と二個上の親フォルダだったと思う
間違ってるかもしれないから調べてね
742デフォルトの名無しさん (アウアウイー Sa87-cQ+C)
2017/12/27(水) 10:46:46.56ID:90Vjgj1Fa あ、間違ってたw
.がカレントフォルダで..がひとつ上の親フォルダね
すんませんな
.がカレントフォルダで..がひとつ上の親フォルダね
すんませんな
743デフォルトの名無しさん (アウアウイー Sa87-cQ+C)
2017/12/27(水) 10:48:05.37ID:90Vjgj1Fa あとsplitの問題に関しては読みやすさとか書きやすさじゃね
俺もよくやる
楽だからね
俺もよくやる
楽だからね
744デフォルトの名無しさん (ワッチョイ cf80-fDvV)
2017/12/27(水) 12:51:59.50ID:u0gTyM9V0 beforeStr = "あ12月い"
afterStr = beforeStr.sub(/\d\d月/) do |matched|
month = matched.to_i + 1
month = 1 if month == 13
sprintf("%02d", month)
end
puts afterStr
#=> あ01い
Ruby で、文字列を置換した。
こういう処理は、Ruby が良い。
PowerShell でも作ってみたが、簡単な置換方法がなかった。
置換時に、コールバック関数を取れる、sub のような関数が無かった
わかりやすいように質問者が投稿する時は、名前欄に、717 と入れてくれ
afterStr = beforeStr.sub(/\d\d月/) do |matched|
month = matched.to_i + 1
month = 1 if month == 13
sprintf("%02d", month)
end
puts afterStr
#=> あ01い
Ruby で、文字列を置換した。
こういう処理は、Ruby が良い。
PowerShell でも作ってみたが、簡単な置換方法がなかった。
置換時に、コールバック関数を取れる、sub のような関数が無かった
わかりやすいように質問者が投稿する時は、名前欄に、717 と入れてくれ
745744 (ワッチョイ cf80-fDvV)
2017/12/27(水) 12:58:13.04ID:u0gTyM9V0 間違っていたので、修正した
beforeStr = "あ12月い"
afterStr = beforeStr.sub(/(\d\d)月/) do |matched|
month = $1.to_i + 1
month = 1 if month == 13
sprintf("%02d", month) + '月'
end
puts afterStr #=> あ01月い
beforeStr = "あ12月い"
afterStr = beforeStr.sub(/(\d\d)月/) do |matched|
month = $1.to_i + 1
month = 1 if month == 13
sprintf("%02d", month) + '月'
end
puts afterStr #=> あ01月い
746デフォルトの名無しさん (ワッチョイ ffb3-7LW1)
2017/12/27(水) 13:38:32.87ID:lJNZ7xHQ0 VBA勉強し始めて間もない時に組んだマクロに
replaceという名前のプロシージャを作りました
そのことはすっかり忘れてたのですが、最近になってそのマクロを手直しする必要があって
その中でReplace関数を使おうとしたらエラーが出る
おかしいなと思い調べてみたらSub replace() を発見
プロシージャの名前を変えたら大丈夫かと思いきやなぜかどこかに何かが残っているようでエラーがでる
一旦そのモジュールを解放したらReplace関数は使えるようにはなりました
しかし、なぜかReplaceと打ってもreplaceとなる
replaceと打ってもそのままreplace
replaceをReplace関数と認識してくれてはいるものの、どこかに何かが残っている
他のブックでは起きないのでまぁそれほど支障はないものの、もし分かる方いらっしゃったら
どうすればいいか教えてください
replaceという名前のプロシージャを作りました
そのことはすっかり忘れてたのですが、最近になってそのマクロを手直しする必要があって
その中でReplace関数を使おうとしたらエラーが出る
おかしいなと思い調べてみたらSub replace() を発見
プロシージャの名前を変えたら大丈夫かと思いきやなぜかどこかに何かが残っているようでエラーがでる
一旦そのモジュールを解放したらReplace関数は使えるようにはなりました
しかし、なぜかReplaceと打ってもreplaceとなる
replaceと打ってもそのままreplace
replaceをReplace関数と認識してくれてはいるものの、どこかに何かが残っている
他のブックでは起きないのでまぁそれほど支障はないものの、もし分かる方いらっしゃったら
どうすればいいか教えてください
747デフォルトの名無しさん (アウアウイー Sa87-cQ+C)
2017/12/27(水) 13:47:19.08ID:fCTi8N3va Replaceで変数宣言してみ
748デフォルトの名無しさん (ワンミングク MM9f-tu6d)
2017/12/27(水) 15:20:29.55ID:DW1nj5RcM >>746
大文字小文字は、現在開いてるコード全体で統一されてしまうからな。
変数でもプロシャージャでもいいから、定義し直すと内部で覚えてる大文字小文字が上書きされるぽ
この仕様のせいで、他人の書いたブック開いたまま修正保存するといつのまにか変わってたりする。
するとWinMergeとかでDIFFしたときにイラッ
独り言でした
大文字小文字は、現在開いてるコード全体で統一されてしまうからな。
変数でもプロシャージャでもいいから、定義し直すと内部で覚えてる大文字小文字が上書きされるぽ
この仕様のせいで、他人の書いたブック開いたまま修正保存するといつのまにか変わってたりする。
するとWinMergeとかでDIFFしたときにイラッ
独り言でした
749デフォルトの名無しさん (アウーイモ MM67-dNkK)
2017/12/27(水) 18:43:06.62ID:8Kp24ZKYM プロシージャ外に書いたオブジェクトの寿命はいつまでなのでしょうか?
グローバル変数にオブジェクトを保存してそれをfunctionで返すシングルトンオブジェクトを作ったのですが、
プログラムが一度終了して再度起動した際もオブジェクトが残っており、ゴミデータでエラーが起きています。
一度ファイルを全て閉じるまでは残るものなのでしょうか?
グローバル変数にオブジェクトを保存してそれをfunctionで返すシングルトンオブジェクトを作ったのですが、
プログラムが一度終了して再度起動した際もオブジェクトが残っており、ゴミデータでエラーが起きています。
一度ファイルを全て閉じるまでは残るものなのでしょうか?
750デフォルトの名無しさん (アウアウイー Sa87-cQ+C)
2017/12/27(水) 18:55:21.26ID:K6GLaCg8a >>749
グローバル変数ならエラーで止まるかブックが生きてる限りは生きてるんじゃね
グローバル変数ならエラーで止まるかブックが生きてる限りは生きてるんじゃね
751デフォルトの名無しさん (JP 0H27-amUm)
2017/12/27(水) 19:03:21.38ID:4eyrVwN9H >>749
あとEndで止めると死ぬ
あとEndで止めると死ぬ
752デフォルトの名無しさん (スップ Sd1f-Eeo6)
2017/12/27(水) 20:23:28.17ID:ry3vSREld >>751
End なあ、せめて Class_Terminate()して欲しかった
End なあ、せめて Class_Terminate()して欲しかった
753デフォルトの名無しさん (ワッチョイ ffeb-7LW1)
2017/12/27(水) 20:40:54.92ID:RyDVOJzS0 >>732 です。
officeの再インストール試してみましたが
不具合解消せずでした・・・・無念
幸い既存マクロは動くので、新規作成と実行は
他のPCでやることにしました。
不具合はExcelだけで、Accessでは特に問題ありませんでした。
一応ご報告まで。
officeの再インストール試してみましたが
不具合解消せずでした・・・・無念
幸い既存マクロは動くので、新規作成と実行は
他のPCでやることにしました。
不具合はExcelだけで、Accessでは特に問題ありませんでした。
一応ご報告まで。
754デフォルトの名無しさん (アウアウイー Sa87-Tgm4)
2017/12/27(水) 20:55:52.26ID:K6GLaCg8a755デフォルトの名無しさん (ワッチョイ b303-G8t+)
2017/12/27(水) 21:08:27.21ID:CubzVxEy0 >>754
マクロ終わったら誰が初期化するん?
マクロ終わったら誰が初期化するん?
756デフォルトの名無しさん (ワッチョイ 6fc5-buzn)
2017/12/27(水) 23:24:01.01ID:TIhBPqs40757デフォルトの名無しさん (ワッチョイ 6fd2-oA/d)
2017/12/27(水) 23:29:35.39ID:0b7v1yOK0758デフォルトの名無しさん (ワッチョイ de93-SYER)
2017/12/28(木) 02:02:28.11ID:uSnaEunu0 >>757
Globalで保持していると想定していた変数がいつのまにかクリアされていて想定外の動作をおこし痛い目にあったことがあります。
調べてみたら、エラー発生時またはEnd通過時にGlobal変数の寿命が尽きるようで、、
それ以来、Global変数もEnd Statementも避けています。
記憶が必要な場合は、Cell値やValidation値またはDocumentProperty等を使うようになりました。
Globalで保持していると想定していた変数がいつのまにかクリアされていて想定外の動作をおこし痛い目にあったことがあります。
調べてみたら、エラー発生時またはEnd通過時にGlobal変数の寿命が尽きるようで、、
それ以来、Global変数もEnd Statementも避けています。
記憶が必要な場合は、Cell値やValidation値またはDocumentProperty等を使うようになりました。
759デフォルトの名無しさん (JP 0H96-FiVz)
2017/12/28(木) 02:45:31.50ID:m7DZbaKUH VBA初心者です
2つのセルがイコールになるように別のセルの値を変化させるというVBAソルバを作成したいのですが、エラーばかりで全く進みません・・・
現在は7行目から10行目まで構文エラーが出ています。
どなたかご教授願います・・・
Sub Solver()
i = 1
Do Until i = 313
'-------------------------------------------
Application.DisplayAlerts = False
SolverOk SetCell:="K" & i, ByChange:="J" & i
SolverAdd cellRef:=Range("K1:K313"), _
Relation:=2, _
FormulaText:=Range("L1:L313"), _
Application.DisplayAlerts = True
'---------------------------------------------
SolverSolve
i = i + 1
Loop
End Sub
2つのセルがイコールになるように別のセルの値を変化させるというVBAソルバを作成したいのですが、エラーばかりで全く進みません・・・
現在は7行目から10行目まで構文エラーが出ています。
どなたかご教授願います・・・
Sub Solver()
i = 1
Do Until i = 313
'-------------------------------------------
Application.DisplayAlerts = False
SolverOk SetCell:="K" & i, ByChange:="J" & i
SolverAdd cellRef:=Range("K1:K313"), _
Relation:=2, _
FormulaText:=Range("L1:L313"), _
Application.DisplayAlerts = True
'---------------------------------------------
SolverSolve
i = i + 1
Loop
End Sub
760デフォルトの名無しさん (ワッチョイ cab3-RYVm)
2017/12/28(木) 05:04:43.84ID:BF7frMSQ0761デフォルトの名無しさん (アウアウイー Sa43-UI1C)
2017/12/28(木) 08:06:18.47ID:VokPBxMja762デフォルトの名無しさん (スップ Sdea-4yVJ)
2017/12/28(木) 08:14:47.46ID:ezpQ52SId イミディエイトウィンドウにあるオブジェクトのことだよね
763デフォルトの名無しさん (ワッチョイ c69d-pcOt)
2017/12/28(木) 17:26:42.52ID:GeC01ME+0 >>749,758
そもそもプログラムが終了ってどういう事をさしてる?
ホントにプログラムが終了すれば、すべての変数の内容は失われるよ
たんに実行するコードが無くなっただけではプログラムは終了していない
Endはプログラムを終了させるけど、エラー出ただけでは終了するとは限らない
デバッグで再実行や変数見たりできるのはプログラムは中断したけど終了してないから
そもそもプログラムが終了ってどういう事をさしてる?
ホントにプログラムが終了すれば、すべての変数の内容は失われるよ
たんに実行するコードが無くなっただけではプログラムは終了していない
Endはプログラムを終了させるけど、エラー出ただけでは終了するとは限らない
デバッグで再実行や変数見たりできるのはプログラムは中断したけど終了してないから
764753 (ワッチョイ 5aeb-RYVm)
2017/12/28(木) 23:10:38.77ID:lWNTZScR0 >>756
753です。
マクロの記録そのものができないのです。
記録しようとすると「マクロの記録ができませんでした」と
エラーが出てしまいます。
新規作成と編集が全て制限されているようです。
セキュリティは「すべて有効」で設定しており、
そこでの問題は無いと思うのですが・・・・
753です。
マクロの記録そのものができないのです。
記録しようとすると「マクロの記録ができませんでした」と
エラーが出てしまいます。
新規作成と編集が全て制限されているようです。
セキュリティは「すべて有効」で設定しており、
そこでの問題は無いと思うのですが・・・・
765デフォルトの名無しさん (ワッチョイ cb8a-Auke)
2017/12/29(金) 04:00:07.55ID:G/qmS2zk0 >>759
"_" は次の行をつなげるためにつけたのだろうけど
Application.DisplayAlearts = True の前の行にも "_" が付いているから
何か貼り付け忘れか、間違って削除してしまったものがあるのでは
"_" は次の行をつなげるためにつけたのだろうけど
Application.DisplayAlearts = True の前の行にも "_" が付いているから
何か貼り付け忘れか、間違って削除してしまったものがあるのでは
766デフォルトの名無しさん (ワッチョイ cb8a-Auke)
2017/12/29(金) 04:08:47.98ID:G/qmS2zk0 セキュリティーレベル一番高いとダメなんじゃね
767デフォルトの名無しさん (ワッチョイ 5fd8-0Y/N)
2017/12/29(金) 07:22:34.45ID:b/Z/hzqU0 >>732
あー、昔そんな事象に当たったことあるよ
原因は同じかどうかは分からんけど
俺の場合とんでもなく深い階層のフォルダに置いてたら
VBEのシートモジュールが青く表示されてコードが作成できなくなった
そのファイル、とりあえず浅い階層のフォルダや
どこかのサーバに置いているなら
クライアント側にコピーして内容確認出来る?
あー、昔そんな事象に当たったことあるよ
原因は同じかどうかは分からんけど
俺の場合とんでもなく深い階層のフォルダに置いてたら
VBEのシートモジュールが青く表示されてコードが作成できなくなった
そのファイル、とりあえず浅い階層のフォルダや
どこかのサーバに置いているなら
クライアント側にコピーして内容確認出来る?
768デフォルトの名無しさん (ワッチョイ 5aeb-RYVm)
2017/12/29(金) 08:53:00.31ID:JNsjSKSN0 732、753です
皆様レスありがとうございます。
作成の不具合は、全くの新規Bookでも起こります。
既存マクロの場合は、コードの表示と実行は行えますが
編集が制限されています。
問題が発生してから、他のPCで新規作成したマクロを
該当PCで実行しようとしましたが、それはコードの表示すら
できませんでした。ファイルサーバー経由とかではなく
デスクトップ上に置いて実行しても同じです。
Accessでは特に問題ないので、VBAそのものではなく、
Excel単体の何かだとは思うのですが、皆目見当がつきませぬ。
皆様レスありがとうございます。
作成の不具合は、全くの新規Bookでも起こります。
既存マクロの場合は、コードの表示と実行は行えますが
編集が制限されています。
問題が発生してから、他のPCで新規作成したマクロを
該当PCで実行しようとしましたが、それはコードの表示すら
できませんでした。ファイルサーバー経由とかではなく
デスクトップ上に置いて実行しても同じです。
Accessでは特に問題ないので、VBAそのものではなく、
Excel単体の何かだとは思うのですが、皆目見当がつきませぬ。
769デフォルトの名無しさん (ワッチョイ 0a65-FiVz)
2017/12/29(金) 10:57:41.44ID:MXSoKJ1y0770デフォルトの名無しさん (ワッチョイ 4a23-Kkzi)
2017/12/30(土) 12:22:18.46ID:cGzM6pFo0 CreateObject("System.Collections.ArrayList")ってやったら
.NETのArrayListがVBAで使えてしまったんですが
これ隠し機能とかじゃなくて正式に使っていいんですよね?
.NETのArrayListがVBAで使えてしまったんですが
これ隠し機能とかじゃなくて正式に使っていいんですよね?
771デフォルトの名無しさん (ワッチョイ 069f-RYVm)
2017/12/30(土) 13:25:09.57ID:dKM8JRI70 前にも話題に上がったけど
.NETのほんの一部はVBAからも使える
リファレンスにも書いてあったような気がする
他で代替できるのでArrayListをわざわざ使うメリットはないということで
そのときは終わったと思う
.NETのほんの一部はVBAからも使える
リファレンスにも書いてあったような気がする
他で代替できるのでArrayListをわざわざ使うメリットはないということで
そのときは終わったと思う
772デフォルトの名無しさん (ワッチョイ 4a23-Kkzi)
2017/12/30(土) 15:32:35.43ID:cGzM6pFo0 >>771
参考にします。ありがとうございました
参考にします。ありがとうございました
773デフォルトの名無しさん (ワッチョイ b3b3-UI1C)
2017/12/30(土) 15:33:00.15ID:xXJ5T9Ia0774デフォルトの名無しさん (ワッチョイ 6fc3-2NT7)
2017/12/31(日) 08:34:16.68ID:5sx4VZ0k0 >>772
Windows APIだって使えるんだぞ?
Windows APIだって使えるんだぞ?
775デフォルトの名無しさん (ワッチョイ de81-DSDK)
2017/12/31(日) 08:58:37.79ID:TXRnAgcd0 VBAの保存方法について
バックアップどうしてますか?
VBAのマクロだと戻る釦聞かないし、バグって復旧するとマクロの個所全部消えちゃうので2つくらいのバックアップを別ファイルでとってあるんですけど皆さんはどうしてますか?
まだ素人なので思ったのと違う処理になって戻せなくなることがしょっちゅうあるので
バックアップは大事
バックアップどうしてますか?
VBAのマクロだと戻る釦聞かないし、バグって復旧するとマクロの個所全部消えちゃうので2つくらいのバックアップを別ファイルでとってあるんですけど皆さんはどうしてますか?
まだ素人なので思ったのと違う処理になって戻せなくなることがしょっちゅうあるので
バックアップは大事
776775 (ワッチョイ de81-DSDK)
2017/12/31(日) 09:02:17.31ID:TXRnAgcd0 >>775
戻る釦ってまるい矢印の奴ね
戻る釦ってまるい矢印の奴ね
777デフォルトの名無しさん (ワッチョイ 4a1e-FiVz)
2017/12/31(日) 09:09:26.61ID:PwPBZUwb0778デフォルトの名無しさん (ワッチョイ 86e7-XPej)
2017/12/31(日) 09:49:30.47ID:aMifsa1T0 マクロ有りエクセルファイル自体にデータを入れて運用するのと、
データは別エクセルファイルにしてマクロ有りエクセルファイルでデータ入りエクセルファイルを操作するのと、
どっちがメンテナンスしやすい作り方だろうか?
いつも悩んでしまう
データは別エクセルファイルにしてマクロ有りエクセルファイルでデータ入りエクセルファイルを操作するのと、
どっちがメンテナンスしやすい作り方だろうか?
いつも悩んでしまう
779デフォルトの名無しさん (ワッチョイ c32b-LuW1)
2017/12/31(日) 09:52:29.70ID:35C6Q16O0 アドインマクロにしましょう
780デフォルトの名無しさん (ワッチョイ 5f9d-tENg)
2017/12/31(日) 11:06:17.25ID:fsRyV04Q0 マクロのバージョン管理ってどうやってます?
インポートファイルを分けすぎると不便なのでshareFanction見たいなインポートファイルに使いそうな関数全部入れてますが、初心者なもので開発中に関数の引数や戻り値を変えたくなるような場面が多々あり
今までのshareFanctionと互換性が保てなくなりますが、引数と戻り値を修正した関数以外でバグを潰したような関数は最新を使用したいです。
今はコピペで対応してますが
インポートファイルを分けすぎると不便なのでshareFanction見たいなインポートファイルに使いそうな関数全部入れてますが、初心者なもので開発中に関数の引数や戻り値を変えたくなるような場面が多々あり
今までのshareFanctionと互換性が保てなくなりますが、引数と戻り値を修正した関数以外でバグを潰したような関数は最新を使用したいです。
今はコピペで対応してますが
781デフォルトの名無しさん (ワッチョイ cae7-n93d)
2017/12/31(日) 11:27:58.03ID:rNrttlhS0 個人なのか仕事なのか書かないと有効なレスがつかないのではないかな
782デフォルトの名無しさん (ワッチョイ 5f9d-tENg)
2017/12/31(日) 11:34:47.18ID:fsRyV04Q0783デフォルトの名無しさん (ワッチョイ cae7-n93d)
2017/12/31(日) 11:36:51.05ID:rNrttlhS0784デフォルトの名無しさん (ワッチョイ 5f9d-tENg)
2017/12/31(日) 11:55:17.97ID:fsRyV04Q0 >>783
ありがとうございます
ざっとみた感じソースファイルのバージョン管理はできそうですが、
例えばサーバーあるいはローカルマシン上にそのshareFanctionを使用している分散しておいてある場合、
それぞれのマクロを調べて更新したいファイルを選択、修正版マクロを適用する、
みたいな使い方ってできるんですかね?
ありがとうございます
ざっとみた感じソースファイルのバージョン管理はできそうですが、
例えばサーバーあるいはローカルマシン上にそのshareFanctionを使用している分散しておいてある場合、
それぞれのマクロを調べて更新したいファイルを選択、修正版マクロを適用する、
みたいな使い方ってできるんですかね?
785デフォルトの名無しさん (ワッチョイ 5f9d-tENg)
2017/12/31(日) 11:57:21.02ID:fsRyV04Q0786デフォルトの名無しさん (ワッチョイ de81-DSDK)
2017/12/31(日) 12:53:47.48ID:TXRnAgcd0 ヴァージョンって仕事じゃないからいつから何時まででUP履歴にしたらいいかわからなん
機能変更したら必ずかもしれないけど、個人用だとやりながら変更しているからバージョン数が半端ないことになる。
機能変更したら必ずかもしれないけど、個人用だとやりながら変更しているからバージョン数が半端ないことになる。
787デフォルトの名無しさん (アウアウイー Sa43-UI1C)
2017/12/31(日) 13:10:06.47ID:sYPUhsnja バージョン管理は大変だよな
インストーラーみたいなのつくってどうにかしようとしてるがうまく行くかわからん
インストーラーみたいなのつくってどうにかしようとしてるがうまく行くかわからん
788デフォルトの名無しさん (ワッチョイ cab3-tILW)
2017/12/31(日) 13:25:39.05ID:pVPyHW7p0789デフォルトの名無しさん (ワッチョイ 5f9d-tENg)
2017/12/31(日) 13:31:04.61ID:fsRyV04Q0 >>787
専用のソフトがなければ1sheetをマクロ関数管理用にして各関数内にver x.y.z(x変更で互換性無し、y変更で互換性あり、z変更は互換性ありバグ修正みたいにして)
モジュールをインポートしたファイルをオープン時に、イベント検知で所定の管理ファイルを検索、新しいバージョンがあれば自動で今までのモジュールを解放、y,zバージョンが最新のファイルをインポート
みたいにすれば実現可能そうですが結構手間がかかりそうで…
専用のソフトがなければ1sheetをマクロ関数管理用にして各関数内にver x.y.z(x変更で互換性無し、y変更で互換性あり、z変更は互換性ありバグ修正みたいにして)
モジュールをインポートしたファイルをオープン時に、イベント検知で所定の管理ファイルを検索、新しいバージョンがあれば自動で今までのモジュールを解放、y,zバージョンが最新のファイルをインポート
みたいにすれば実現可能そうですが結構手間がかかりそうで…
790デフォルトの名無しさん (アウアウカー Sacb-WFBV)
2017/12/31(日) 13:56:42.14ID:hllNi94Va マクロで書けよ。
バージョン管理。
セキュリティが低下するけどな。
バージョン管理。
セキュリティが低下するけどな。
791デフォルトの名無しさん (ワッチョイ 0f03-vlH/)
2017/12/31(日) 18:06:59.07ID:nOUozIFo0 そもそも論として、たかがマクロでバージョン管理が必要になるような力作()作るなよw
キミたちは一体エクセルマクロで何を築こうとしておるのかねw
キミたちは一体エクセルマクロで何を築こうとしておるのかねw
792デフォルトの名無しさん (ワッチョイ deb9-FiVz)
2017/12/31(日) 18:13:51.04ID:2b4EaTgg0 仕事でVBA扱ってると色々な理由から小さいマクロでもバージョン管理が必要になってくる。
793デフォルトの名無しさん (ワッチョイ cae7-n93d)
2017/12/31(日) 19:27:51.32ID:rNrttlhS0794デフォルトの名無しさん (ワッチョイ 0f03-vlH/)
2017/12/31(日) 19:58:25.49ID:nOUozIFo0 >>793
力作()じゃないのにぐちゃぐちゃになるってどんだけ当てずっぽうにマクロ書いてんだよw
力作()じゃないのにぐちゃぐちゃになるってどんだけ当てずっぽうにマクロ書いてんだよw
795デフォルトの名無しさん (ワッチョイ cab3-tILW)
2017/12/31(日) 20:00:31.71ID:pVPyHW7p0 社内に展開するとかでサポートが必要ならバージョン管理ぐらいは必須だろ
>>791は無知すぎ
>>791は無知すぎ
796デフォルトの名無しさん (ワッチョイ 0f03-vlH/)
2017/12/31(日) 20:24:53.68ID:nOUozIFo0797デフォルトの名無しさん (ワッチョイ defa-FiVz)
2017/12/31(日) 20:28:42.31ID:1PdKj8Yj0 またメゾット君か。
798デフォルトの名無しさん (アークセー Sx03-8opW)
2017/12/31(日) 20:42:44.41ID:rRjJbr8wx メゾット君って雰囲気ですぐ分かるよね
799デフォルトの名無しさん (ワッチョイ cb8a-Auke)
2017/12/31(日) 20:54:32.08ID:KnonKKai0 OLDフォルダにファイル名の後に日付つけたファイルをコピーしてる
800デフォルトの名無しさん (ワッチョイ 4a23-Kkzi)
2017/12/31(日) 21:20:00.26ID:A+5By6dM0 ていうかバイナリファイルをバージョン管理システムに登録したところで
単なる時系列バックアップにしかならんうえに
シートを更新しただけでバージョンが変わるから意味ないのでは
単なる時系列バックアップにしかならんうえに
シートを更新しただけでバージョンが変わるから意味ないのでは
801デフォルトの名無しさん (ワッチョイ cae7-n93d)
2017/12/31(日) 22:37:10.58ID:rNrttlhS0 力作2.0
802デフォルトの名無しさん (ワッチョイ 8aa4-ycq7)
2017/12/31(日) 22:50:02.43ID:InzisC8s0 悩みはみんな一緒なんだね。俺はバージョンアップに悩んでアドイン化したが
これはこれで悩ましいところがあるんだな。シートを初期化(つまりClearとかClearContents)する
のにもよーく考えないと結構危ない。アドインはどのブックでも実行出来てしまうからPCに疎いヤツが使うのも考えると
別の方法を考えた方が良いんだろうかとか考えてる。
これはこれで悩ましいところがあるんだな。シートを初期化(つまりClearとかClearContents)する
のにもよーく考えないと結構危ない。アドインはどのブックでも実行出来てしまうからPCに疎いヤツが使うのも考えると
別の方法を考えた方が良いんだろうかとか考えてる。
803デフォルトの名無しさん (ワッチョイ cae7-n93d)
2017/12/31(日) 22:55:00.56ID:rNrttlhS0804デフォルトの名無しさん (ワッチョイ 8aa4-ycq7)
2017/12/31(日) 23:12:43.15ID:InzisC8s0 >>803
そりゃ分かってるての。ブックを指定する時は「ActiveWorkBook」とするしかない(決めつけはよくないが)
からよーく考えてコードを書かないと危ない場合もあるって話。使う連中の9割はマクロどころかシート関数も
知らないような連中なんだから。
そりゃ分かってるての。ブックを指定する時は「ActiveWorkBook」とするしかない(決めつけはよくないが)
からよーく考えてコードを書かないと危ない場合もあるって話。使う連中の9割はマクロどころかシート関数も
知らないような連中なんだから。
805デフォルトの名無しさん (ワッチョイ cae7-n93d)
2017/12/31(日) 23:41:30.90ID:rNrttlhS0 >>804
・処理をスタートするFunction や Subはアドイン側にはない。当該Book側にある
・そのFunction や Subがアドイン側の機能を使う
だとするとアドイン側に「ActiveworkBook」なんて書く必要はなくて、処理対象のSheetやRangeを
引数で受け取るだけになると思うんだがね
・処理をスタートするFunction や Subはアドイン側にはない。当該Book側にある
・そのFunction や Subがアドイン側の機能を使う
だとするとアドイン側に「ActiveworkBook」なんて書く必要はなくて、処理対象のSheetやRangeを
引数で受け取るだけになると思うんだがね
806デフォルトの名無しさん (ワッチョイ 8aa4-ycq7)
2017/12/31(日) 23:52:05.59ID:InzisC8s0 >>805
作業するBookはxlsxなんだよ。マクロはxlms側に書いてある。
なんでこうしたかというと、仕事柄、ブックは地方自治体に提出する場合があるから。
何の事かわからないだろうからもうちょっと書くと、測量データの野帳なんだよ。
作業するBookはxlsxなんだよ。マクロはxlms側に書いてある。
なんでこうしたかというと、仕事柄、ブックは地方自治体に提出する場合があるから。
何の事かわからないだろうからもうちょっと書くと、測量データの野帳なんだよ。
807806 (ワッチョイ 8aa4-ycq7)
2017/12/31(日) 23:53:24.81ID:InzisC8s0 xlmsじゃねえや、xlamだな。
808デフォルトの名無しさん (JP 0H27-GXwu)
2018/01/01(月) 04:27:25.57ID:WDGj6QXoH809デフォルトの名無しさん (ワッチョイ cab3-tILW)
2018/01/01(月) 09:37:05.14ID:hnfikatx0810デフォルトの名無しさん (JP 0H27-QCE3)
2018/01/01(月) 13:40:19.53ID:iV2QIiO7H >>809
作業ブック側にコード書けないんだよ。知ったかすんなよボケ
作業ブック側にコード書けないんだよ。知ったかすんなよボケ
811デフォルトの名無しさん (ドコグロ MMdf-tILW)
2018/01/01(月) 13:55:03.62ID:7v1CUCWaM >>810
作業ブックにコードなんか要らんだろ w
知らないなら黙ってろ
てか、アドインでメニュー追加なんて基本中の基本だと思うが
http://toshimana.hatenablog.com/entry/2014/01/26/204938
作業ブックにコードなんか要らんだろ w
知らないなら黙ってろ
てか、アドインでメニュー追加なんて基本中の基本だと思うが
http://toshimana.hatenablog.com/entry/2014/01/26/204938
812デフォルトの名無しさん (ワッチョイ c620-cnjM)
2018/01/01(月) 14:25:45.74ID:7yffOGmB0 知らないことを素直に知らないと言いなさい
2018/01/01(月) 14:27:07.60ID:tZ/lpIQo0
今年はいい年になるかなw
814デフォルトの名無しさん (ワッチョイ cae7-n93d)
2018/01/01(月) 14:29:26.10ID:UomJiKNZ0815デフォルトの名無しさん (アークセー Sx03-8opW)
2018/01/01(月) 14:54:13.21ID:ixsE+qrMx またメゾット君が暴れてるな
あの馬鹿が出入りするようになってから荒れすぎ
あの馬鹿が出入りするようになってから荒れすぎ
816デフォルトの名無しさん (アウアウイー Sa43-UI1C)
2018/01/01(月) 15:45:18.49ID:bzNinO0Ma >>814
よく考えろよ
よく考えろよ
817デフォルトの名無しさん (ワッチョイ cae7-nqWF)
2018/01/01(月) 16:11:19.12ID:PLRWaMeF0 >>816
おっと、 Workbook_AddinInstallを Workbook_AddinUninstallと書き間違えた
おっと、 Workbook_AddinInstallを Workbook_AddinUninstallと書き間違えた
818デフォルトの名無しさん (アウアウイー Sa43-UI1C)
2018/01/02(火) 09:36:26.90ID:nA397GZea819デフォルトの名無しさん (スップ Sd8a-nqWF)
2018/01/02(火) 12:29:02.41ID:MKa2S+Tjd820デフォルトの名無しさん (ワッチョイ c69f-v6Xa)
2018/01/03(水) 10:57:08.56ID:rhTFyGx/0821デフォルトの名無しさん (ワッチョイ b3b3-UI1C)
2018/01/03(水) 11:46:24.84ID:ZpYRfYyG0 アドインにするにしてもなんにしても運用がしっかりされてないと意味がない
ファイル名やシート名程度が保証されてないならマクロ化なんて諦めろ
ファイル名やシート名程度が保証されてないならマクロ化なんて諦めろ
822デフォルトの名無しさん (ワッチョイ 1b65-BE4F)
2018/01/03(水) 11:59:35.70ID:Uz65NhYa0 >>820
設定値を保存するのはやめたほうが良いと思うな。
バージョンアップしたときに設定値がリセットされてしまうとか、エクセルバグの巻き添えでブック破損の危険性がある。
できるだけアドインは読み取り専用で運用するべきだと思う。
過去に内部シートに保存するように作って問題が起きたので、バージョンアップ時にxmlにコンバートさせた事があるわ
設定値を保存するのはやめたほうが良いと思うな。
バージョンアップしたときに設定値がリセットされてしまうとか、エクセルバグの巻き添えでブック破損の危険性がある。
できるだけアドインは読み取り専用で運用するべきだと思う。
過去に内部シートに保存するように作って問題が起きたので、バージョンアップ時にxmlにコンバートさせた事があるわ
823デフォルトの名無しさん (ワッチョイ cab3-tILW)
2018/01/03(水) 12:49:50.09ID:lLEkaf6s0 お前のバグを根拠にされてもなぁ
824デフォルトの名無しさん (アウアウイー Sa43-UI1C)
2018/01/03(水) 14:45:49.49ID:hfgsKA7ma まあ、設定は外出しにするのが普通に安全策じゃね?
xlamのシートは明らかに利用してほしくないっていう思いが伝わる作りな訳だから
xlamのシートは明らかに利用してほしくないっていう思いが伝わる作りな訳だから
825デフォルトの名無しさん (スップ Sd8a-nqWF)
2018/01/03(水) 15:32:51.77ID:00k1dN96d 利用者が不用意にセルデータをクリアしてそのままセーブしても自覚すらしないかも
826デフォルトの名無しさん (ワッチョイ 2bb3-xohC)
2018/01/04(木) 05:46:13.89ID:UuI+tM4Q0 質問よろしくお願いします。
A列,B列,C列,D列
Aa,111,bbb,20
Bb,111,aaa,30
Aa,222,bbb,10
Bb,111,aaa,10
Aa,111,bbb,15
上記の様な表を下記の様にしたいです。
A列,B列,C列,D列
Aa,111,bbb,35
Aa,222,bbb,10
Bb,111,aaa,40
A,B,C列の値が一致したらD列を加算して行を削除するという処理です。データは約1000行程です。
A列,B列,C列,D列
Aa,111,bbb,20
Bb,111,aaa,30
Aa,222,bbb,10
Bb,111,aaa,10
Aa,111,bbb,15
上記の様な表を下記の様にしたいです。
A列,B列,C列,D列
Aa,111,bbb,35
Aa,222,bbb,10
Bb,111,aaa,40
A,B,C列の値が一致したらD列を加算して行を削除するという処理です。データは約1000行程です。
827デフォルトの名無しさん (ワッチョイ 9f1e-j5y8)
2018/01/04(木) 06:37:20.49ID:MFccPkO20 1000行程度ならSUMIFSとかでできるんじゃないの
828デフォルトの名無しさん (ドコグロ MM3f-TPPA)
2018/01/04(木) 06:55:39.59ID:IcyEu6L/M >>826
要件によるけどそういうビューを作ればいいんじゃね?
create view V as (
select A列,B列,C列,sum(D列) as D列
from 表
group by A列,B列,C列
)
要件によるけどそういうビューを作ればいいんじゃね?
create view V as (
select A列,B列,C列,sum(D列) as D列
from 表
group by A列,B列,C列
)
829デフォルトの名無しさん (ドコグロ MM3f-TPPA)
2018/01/04(木) 06:57:20.78ID:IcyEu6L/M すまん、寝ぼけててSQLスレと勘違いしてた...
>>828はなしで
>>828はなしで
830デフォルトの名無しさん (ワッチョイ 9f23-wtpF)
2018/01/04(木) 07:39:39.14ID:IGCyfMcU0831デフォルトの名無しさん (ササクッテロリ Spcf-xohC)
2018/01/04(木) 08:01:11.56ID:5mprgbRzp832デフォルトの名無しさん (ワッチョイ 0ffa-aKZ8)
2018/01/04(木) 10:15:47.38ID:fF+rBx/60 データベース系のデータは素直にデータベースソフトで管理しようよ・・・。
アクセスでやればマウス操作だけで終わる様な問題だよ。
アクセスでやればマウス操作だけで終わる様な問題だよ。
833デフォルトの名無しさん (ワッチョイ 9f2d-Zjw3)
2018/01/04(木) 10:22:48.62ID:d1LyNdol0834デフォルトの名無しさん (アウアウイー Sacf-rQ0k)
2018/01/04(木) 10:31:44.20ID:no6Ylxj0a sqlならselectとorder byだけですむ案件だな
愚直にプログラム組むと厄介だけどね
愚直にプログラム組むと厄介だけどね
835デフォルトの名無しさん (スプッッ Sdbf-5v12)
2018/01/04(木) 10:38:07.48ID:7zx5w2nrd ピボットでいいんじゃね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 習政権、高市首相への態度硬化 台湾有事発言で連日非難 中国 ★11 [ぐれ★]
- 国内ホテル、既にキャンセルも 訪日客関連業界、事態見守る ★3 [蚤の市★]
- 日本損失1.7兆円に修正 中国渡航自粛の影響試算 [蚤の市★]
- 「どうしようもない」 ため息つくアジアの玄関口 中国の訪日自粛で−福岡市 [蚤の市★]
- 「アベノミクス」で投資対象と化したマンション ローンの低金利続き「年収の12倍」借りる20代出現 [蚤の市★]
- 食品の高騰対策、政府が交付金の「特別枠」検討 原則全ての自治体で [蚤の市★]
- 【超絶悲報】日本政府「高市さんの答弁撤回はない。政権として弱腰と映る姿勢は見せられない」これもう立憲岡田の議員辞職しかないだろ [519511584]
- 【実況】博衣こよりのえちえち朝こよ🧪
- 台湾「高市さんが台湾人の悲願を叶えてくれた!」これじゃ高市さん発言撤回できないぢゃん😰 [523957489]
- 高市周辺、さすがに焦り始めるww「小さな火種が火事になりかけている。早く鎮火しなくてはいけない」 [271912485]
- 【超悲報】中国への武力行使、世論調査で「賛成」「どちらかといえば賛成」48.8% 「反対」「どちらかといえば反対」の44.2%を上回る [314039747]
- 中国「高市が頭を下げて謝罪しない限り、絶対に許さない」 [329329848]
