Excel VBA 質問スレ Part51 at TECH
[2ch|▼Menu]
[前50を表示]
650:デフォルトの名無しさん
17/12/18 19:34:37.55 pW3jV0rpa.net
>>632
そりゃあ人によっちゃ違うが、それは才能があるからで近道しようとしてそうなってる訳じゃないだろ
わかんないことがあったら別の切り口から攻めると言うのもありじゃないの

651:デフォルトの名無しさん
17/12/18 19:45:01.61 au4G9Tq20.net
VBAerさんついに終わるのか
Pythonに駆逐されちゃうね

652:デフォルトの名無しさん
17/12/18 19:45:05.21 /veb4c2e0.net
>>633
ないとは言ってないよ
俺が言いたいのは、別の切り口から攻めようが近道しようが
既知の問題の解決策は知識として身につくが
未知の問題に対する解決能力は上げることができないって事
つまり上達とか意識しないで楽なやり方ばかり選ぶ奴がいつだって一番賢い

653:デフォルトの名無しさん
17/12/18 19:51:30.63 pW3jV0rpa.net
>>635
天才の人は苦にしないだけでちゃんと道は通ってるよ

654:デフォルトの名無しさん
17/12/18 19:54:37.06 /veb4c2e0.net
>>636
何を言いたいのかよくわからんがそもそも俺が言ってるのは天才のことじゃない
単にプログラムができる奴とできない奴の話なんだが

655:デフォルトの名無しさん
17/12/18 19:57:32.60 pW3jV0rpa.net
>>637
iqないとダメなのはプログラムに限らんし
まあスレチだから退散するわ

656:デフォルトの名無しさん
17/12/18 20:01:42.20 /veb4c2e0.net
>>638
いやだからIQとかの話じゃないってば
目の前の問題をありのままに受け入れる事ができる奴と
既に自分の中に構築された知識に当てはめないと解釈できない奴の違いだって

657:デフォルトの名無しさん
17/12/18 23:11:06.58 aXpCltYZ0.net
>>634
仮に採用されて皆がPython触るようになったら、今度はPython(笑)って扱いされる未来が見えるわ。
格好つけだけでやってる奴らが抜けて、AIとか作ってる真っ当なのが風評被害を受けそう。
言語は統一するよりも、それを扱うユーザー層毎に分けた方がいい。

658:デフォルトの名無しさん
17/12/19 12:28:53.96 /mb664F4a.net
>>618
俺も似たようなの見たことがある。
でも引きずるような問題じゃ無かったと思う。
Excel再起動かPC再起動で直るんじゃね?

659:デフォルトの名無しさん
17/12/19 12:37:10.24 pfZPHd/La.net
>>635
逆だと思うが。
未知の問題に対しての解決能力は上げることができる。
楽なやり方を選ぶ奴は上げられないだけ。
厳密には未知な問題といっても既知の問題と全く違うわけじゃない。

660:デフォルトの名無しさん
17/12/19 16:48:29.82 mNLh8c+i0.net
ここのやつらがあんまジャバジャバいうから引っ張り出して着たわ
とりあえずコードは実行せずにパラ読みしようと思う
URLリンク(i.imgur.com)

661:デフォルトの名無しさん
17/12/19 17:01:17.86 Bngslooy0.net
>>643
「わー、ロレックス持ってるなんてすごーい!」
「え?こんなの普


662:ハだよ。持ってないとかwww」 みたいな展開になる事を期待してるんだろうけど腕時計の入れ方が無理やり過ぎて笑いしか出てこないw 本は中古屋で買ったみたいだし、あまりにもちぐはぐ過ぎてむしろ格を下げてるようにしか見えないんだが。



663:デフォルトの名無しさん
17/12/19 18:14:51.58 J+VWEpvK0.net
>>642
うんだから最初に言ったんだけど自己評価だとそう感じるんだってば

664:デフォルトの名無しさん
17/12/19 19:02:39.42 mNLh8c+i0.net
JAVAの本でわかったこと
変数の宣言と同時に値を入れることを初期化という
変数の値が変わらないことを定数という
いま10ページ目だけどこんくらいだわ

665:デフォルトの名無しさん
17/12/19 19:57:29.94 9tP52mqX0.net
>>646
>変数の値が変わらないことを定数という
これはちょっと違うのでは?

666:デフォルトの名無しさん
17/12/19 20:25:43.13 fLKwjLgZa.net
>>645
お前の自己評価がそう感じてるだけだろw
何か自分はプログラム書ける気になってるようだけどw

667:デフォルトの名無しさん
17/12/19 21:14:28.27 4AWSTK/ra.net
変数の初期かもなんかむずむずする理解だな

668:デフォルトの名無しさん
17/12/19 21:15:04.92 4AWSTK/ra.net
あ、でも彼はジャワティーの話をしてるのか
ならわからんでもない

669:デフォルトの名無しさん
17/12/19 21:26:16.08 mNLh8c+i0.net
javaのパスが通らなくて実行できない
助けてくれ

670:デフォルトの名無しさん
17/12/19 23:45:33.30 jfHXMkXp0.net
Java は環境構築が難しいから、初心者には無理
paiza.IO, codepad などのサイトで、ブラウザから実行しろ

671:デフォルトの名無しさん
17/12/20 00:20:41.41 USwfdD4Y0.net
別にJavaが難しいと感じたことはないな。
すっげえ昔にかじっただけだから今となっては初心者以下だけど。
いや、当時も初心者だったけど。

672:デフォルトの名無しさん
17/12/20 00:28:51.85 USwfdD4Y0.net
コンパイラもJavaで出来てるからJava実行環境でコンパイラ動かして、そのコンパイラへの引数にエディタで編集中のテキストを一時ファイルにしたものを渡してたな。
そのエディタもJavaで誰かが作ったものを機能拡張したやつだったな。

673:デフォルトの名無しさん
17/12/20 00:40:50.45 xfg3gakwa.net
コマンドラインが敷居高いならeclipseでやれ
敷居高いつっても環境変数設定してそこにパス通すだけだがな

674:デフォルトの名無しさん
17/12/20 01:00:50.98 sohN4awK0.net
javaって効率悪すぎだろ
テキストエディタで編集

名前つけて保存

コマンドプロンプトでコード入力

実行
どんだけ時間かかるんだよ

675:デフォルトの名無しさん
17/12/20 08:24:00.28 TZHE5kKsa.net
いやeclipse使えよ

676:デフォルトの名無しさん
17/12/20 09:28:33.38 FRuTBLwYp.net
これ以上はスレ違いなのでJavaスレでどうぞ

677:デフォルトの名無しさん
17/12/20 09:36:49.97 GPFg9WZwx.net
eclipseも知らないで手動でコンパイルしながらブチキレてるの想像してワロタ
道は遠いね

678:デフォルトの名無しさん
17/12/20 12:25:53.38 Vi8ViNgtd.net
スレチ

679:デフォルトの名無しさん
17/12/20 12:41:32.07 /dU/ndoRa.net
お前ら良かったな
EXCELでPythonが使えるようになるかも知れないんだって?
あれはObject指向の流れを組む関数型を目指しているところの言語っていうからやりがいはあるよね
俺もVB.NetやC#はやったけど
EXCELに載ることが確定したらこれからPython覚えるわ
まぁ構造化言語からObject指向型言語に移行したとき
めちゃくちゃ苦労したけど
今回も苦労するんだろうなぁ

680:デフォルトの名無しさん
17/12/20 13:38:58.93 /fbzm/vOa.net
Pythonはさらっと概要見たぐらいだけど面白そうだね
まあexcelにのらなくても勉強して損にはならんだろうな

681:デフォルトの名無しさん
17/12/20 15:31:22.90 EAMpcVD20.net
必要ないもん勉強したって時間のムダだっつーの
真のエ


682:Nセルマクラーだったらマクロ書くのにパイソンしか使えなくなった時に必死でググれ



683:デフォルトの名無しさん
17/12/20 16:07:26.91 /h7jUJynd.net
今のままでも関数型で出来るらしいが
URLリンク(qiita.com)

684:デフォルトの名無しさん
17/12/20 18:29:06.12 khkAeR460.net
Pythonはオブジェクト指向も関数型も全部後付けって感じでイケてねえ
F#にしとけって
でもこんなのはプログラマ以外が触るものだからしょうがないのかもな

685:デフォルトの名無しさん
17/12/20 19:00:00.85 sxNo8wqUa.net
>>665
F#ってまだ生きてんのか!

686:デフォルトの名無しさん
17/12/20 19:51:25.83 7WhairgWd.net
生きてるし、活発に使われてるよ
ソースはない

687:デフォルトの名無しさん
17/12/20 20:52:44.38 EAMpcVD20.net
ソースはないソースはよ

688:デフォルトの名無しさん
17/12/21 23:06:47.24 1PuX0k7mM.net
100列ぐらい続く計算エクセルがある
足したり引いたりするだけのエクセル。
酷くね?VBAにできないものか

689:デフォルトの名無しさん
17/12/22 02:00:09.18 T3zOnX2zx.net
>>669
計算エクセルっていう表現が意味不明だが要は計算用のワークシートのことか?
大抵の場合、ワークシート関数とテーブル機能を組み合わせて何とかする方がVBA使うより楽だぞ
車輪の再発明をしてもしょうがないからな

690:デフォルトの名無しさん
17/12/22 04:21:53.41 0EXQoFbJ0.net
質問です。
Excel側からVBE上の指定のプロシージャ記述欄にジャンプする動作をVBAで記述できる
でしょうか?
やり方がわからずとりあえずSendKeysを組み合わせて動作するようになったのですが
不慮の事故が起きそうで怖いです。
VBEのオブジェクトモデルに沿ったアクセス方法があれば教えていただけないでしょうか。

691:デフォルトの名無しさん
17/12/22 07:49:35.63 BCzwPGy5d.net
>>671
VBE上でカーソルの位置をコントロールするってこと?

692:デフォルトの名無しさん
17/12/22 11:50:10.85 7Q1lZFEo0.net
>>672
メンテのためにActiveBookから全Procのリストを新規Sheetに出力する
Procedureを用意したのですが、Proc名からVBE上の該当Procにジャンプ
したく、右ClickEventにジャンプ機能を割り当てました。
正しいアクセス方法がわからないので、ほぼSendKesyのみで記述している
のですが、状況により意図しない挙動をします。
VBEを開く動作は "^{F11}"の代わりに
 Application.CommandBars.FindControl(ID:=1695).Execute
が使えそうなことはわかったのですが、、、
VBE上で1つもModuleが開かれていなかったり、開かれているModuleと、ツリー
側の選択されているModuleが異なったりすると、"^F"が効かないようです。
FrontEndからではなく、ObjectModelに沿ったBackEndからの操作が
知りたいのですが、うまく情報を見つけられないところです。

693:デフォルトの名無しさん
17/12/22 12:58:52.19 7Q1lZFEo0.net
>>671
自己解決しました。
キーワードを英語に切り替えてGGったら、StackOverFlowですぐ見つかりました。
.CodePane.GetSelection
.CodePane.SetSelection
あたりでなんとかなりそうです。お騒がせしました。

694:デフォルトの名無しさん
17/12/22 17:40:48.08 3J82DkVga.net
VBAやりはじめて三年ぐらいだけど、For Eachで普通の配列もループできるの今日知ったわ
コレクションだけだと思ってた

695:デフォルトの名無しさん
17/12/22 18:05:37.66 /KqbyaeQd.net
>>675
値の取得だけで設定はできないけどねー

696:デフォルトの名無しさん
17/12/22 18:16:05.21 3J82DkVga.net
>>676
クラスの扱いが大分変わるのよ
わざわざイテレータ自作してたわ

697:デフォルトの名無しさん
17/12/23 00:05:26.91 /nzAEvVba.net
>>674 できるんだけどセキュリティ的に問題だからお勧めしない。 .netで書いた方が良いぞ。 でもVBEを操作するコードが書ければ、.net上でも殆ど同じコードでいけるから勉強しとくと良いかな。



699:デフォルトの名無しさん
17/12/23 06:34:44.47 F3cHZlpp0.net
sheet1に置いたボタンを押してからsheet1内のセルをクリックすると、クリックしたセルに「ここ」
とはいるようにしたいです。実際作りたいものはもっと複雑ですが、とりあえず。
そこで、sheet1のシートモジュールに以下の記述をしました
しかし、どうやら前回クリックしていた場所を覚えていて、その場所に「ここ」と入ってしまいます
解決法はありますか?
Private Declare PtrSafe Function GetAsyncKeyState Lib "User32.dll" (ByVal vKey As Long) As Integer
Private Sub CommandButton1_Click()
Do
If GetAsyncKeyState(VK_LBUTTON) Then
ActiveCell.Value = "ここ"
Exit Do
End If
Loop
End Sub

700:デフォルトの名無しさん
17/12/23 06:43:21.92 F3cHZlpp0.net
>>679で書き忘れ
標準モジュールの宣言部に
Public Const VK_LBUTTON = &H1
の記述もしてあります。

701:デフォルトの名無しさん
17/12/23 07:46:11.28 8SavP0Th0.net
>>679
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Count = 1 Then Target.Value = "ここ"
End Sub
クリックした場所に入れるだけならSheet1モジュールにこれで済むけど、コルーチン処理が必要というなら分からん。
いずれにしてもActiveCellとかActiveSheetとかは避けて設計すべき。

702:デフォルトの名無しさん
17/12/23 07:56:20.90 F3cHZlpp0.net
>>681
自分もググってたどりついた先がそれだったんですよね
でも常に発動してる状態だとやっぱり困るんですよ
一応application.enableevent を使って停止しておくこともできるようなので、
通常は停止しておくことも考えてはいます
設置したボタンを押したときだけ機能するようにしておけばいいのかな、と。
Worksheet_SelectionChange使う以外方法がなければそうするしかないですが
無効にしてる間はイベントが一切反応しなくなるという事なので、
イベント付きの他のブックを併用するようなケース等で問題が起きそうで迷ってます

703:デフォルトの名無しさん
17/12/23 08:00:18.36 8SavP0Th0.net
>>682
なら
If ToggleButton1.Value Then
とか加えておけばいいだけでは?

704:デフォルトの名無しさん
17/12/23 08:11:12.55 F3cHZlpp0.net
>>683
お・・これはいけそうです
こういう使い方があるんですね・・・
作業を先に進められそうです
ありがとうございました

705:デフォルトの名無しさん
17/12/23 10:35:36.95 oVsH3Gmz0.net
フォームコントロールボタンの文字の色を変えたいんだけど
セレクトしない方法はないのですか?
Sub test01()
 n = Worksheets("Sheet1").Shapes("Button 1").Name
 Worksheets("Sheet1").Shapes(n).Select
 Selection.Font.ColorIndex = 3
End Sub

706:デフォルトの名無しさん
17/12/23 10:51:51.14 YCHexesv0.net
フォームコントロールボタンの文字の色を変えたいんだけど
セレクトしない方法はないのですか?
Set n = Worksheets("Sheet1").Shapes("Button 1")
 n.Font.ColorIndex = 3
みたいな?

707:デフォルトの名無しさん
17/12/23 13:25:10.14 Zcbsqwvta.net
シート上のボタンならtoggleにしなくてもモジュールレベルのクリックフラグ変数で管理できねーか?

708:デフォルトの名無しさん
17/12/23 13:35:38.33 8SavP0Th0.net
>>687
出来合いのものを、わざわざ回避する利点は?

709:デフォルトの名無しさん
17/12/23 15:32:28.22 tRk+L7lt0.net
>>688
いや、最初コマンドボタンだったからコマンドの方がいいのかなって思っただけ
別に必要無いなら必要無いでいいし

710:デフォルトの名無しさん
17/12/23 18:23:21.18 3q2JAS6ba.net
>>686
逆に何でセレクトしなきゃならんのかが分からん。
普通セレクトなんてしないだろ。

711:デフォルトの名無しさん
17/12/23 18:24:04.16 3q2JAS6ba.net
すまん。
>>685向けね。

712:デフォルトの名無しさん
17/12/23 19:38:10.94 DrTFst260.net
>>685
Worksheets("Sheet1").Shapes("Button 1").TextFrame.Characters.Font.Color = vbRed
または
Worksheets("Sheet1").Buttons("Button 1").Font.Color = vbRed
SelectするとButtons("Button 1")をオブジェクトとしてSelectionに持つので
Selection.Font.Color = vbRed でいける
一方、ShapesはFontオブジェクトをもっていないので
Fontオブジェクトを持っているヤツまで掘り下げてかなければダメ
ということだと思う。

713:デフォルトの名無しさん
17/12/23 19:53:54.32 AF0984djx.net
>>692
直感的な説明だが、オブジェクトがオブジェクトを持つという表現は間違い
オブジェクトが持つのはあくまでメソッドとプロパティからなるメンバで、いわゆる下位オブジェクトにはメンバを介してアクセスしてるだけだからな

714:デフォルトの名無しさん
17/12/23 20:15:31.85 oVsH3Gmz0.net
>>692
マクロの記録でやってたので。1行で可能なのですね。
TextFrame.Characters.Font.Colorでググったら出てきました。
ありがとうございました。

715:デフォルトの名無しさん
17/12/23 20:55:59.08 afY4COyy0.net
ちなみにButtonsとかCheckBoxesとかは隠しプロパティ
ヘルプにもでてこないからな
なんで隠してあるのかねぇ

716:デフォルトの名無しさん
17/12/24 00:26:44.47 oSJcOqyea.net
>>694
分かるよ。
そういう人がとても多いから。
でも、殆どの処理はセレクト無しで書ける。
個人的にはセレクト無しで書けない場合でも何とかセレクトせずに書けないかを考える。

717:デフォルトの名無しさん
17/12/24 00:45:00.70 BN72T8jr0.net
まあ、大多数の用途では得られるメリットが少なすぎてSelectを消す意味は薄いけどな

718:デフォルトの名無しさん
17/12/24 01:23:50.46 2PxYmIQzx.net
オブジェクトのプロパティにアクセスする処理でSelectメソッドはなるべく使わない
コードの実行中にデバッグ作業を行ったときなどに予期しないオブジェクトが選択されて、アクセスしたいプロパティにアクセス出来ずエラーになることがよくあるからね
Rangeオブジェクトを指定していたはずがShapeオブジェクトやOLEObjectオブジェクトを選んでいたりとか

719:デフォルトの名無しさん
17/12/24 01:43:15.08 O2udkTbW0.net
Selectは必ず代替手段があるから、範囲選択してユーザーに注意を促すとかでなけりゃSelect使う事に疑問を持った方がいい。

720:デフォルトの名無しさん
17/12/24 06:22:03.30 ZKd7S1fn0.net
起動中のIEからさらに別窓で開かれるフォーム入力用窓のIEオブジェクトを取得して操作したいと考えているのですが、
Function hoge() As WebBrowser
Dim tmp As Variant
For Each tmp In CreateObject("Shell.Application").Windows
If TypeName(tmp.document) = "HTMLDocument" Then
Set hoge = tmp
Exit Function
End If
Next tmp
End Function
のようにShellを使ってもIEオブジェクトを取得できなくて困っています
Set objIE = MAGIC(hWnd)
のような形で、ハンドルからIEオブジェクトを取得する方法は無いでしょうか
他に方法があれば、ハンドルから取得する方法にこだわりません
ただし、諸事情により外部からライブラリをダウンロードしてきて使用する、といったことはできないです

721:デフォルトの名無しさん
17/12/24 08:15:14.57 BN72T8jr0.net
>>700
別窓かどうかの判定が抜けてる
LocationNameとかLocationURLあたりを調べないと

722:デフォルトの名無しさん
17/12/24 11:59:50.98 uwQxUsVy0.net
IEが複数あるかもしれないのに見つかったら抜けちゃうコードで何かおかしいと感じないの?

723:デフォルトの名無しさん
17/12/24 15:06:20.77 6Phr71Y20.net
Dim u As Long
Range("A1", "I5").Value = u
u = Round(u, 4)
四捨五入したいのに全部ゼロになる!

724:デフォルトの名無しさん
17/12/24 15:18:15.83 CcW1Sn5Aa.net
>>703
uには何が入るの?

725:デフォルトの名無しさん
17/12/24 15:18:38.84 CcW1Sn5Aa.net
てか、そりゃゼロになるだろw

726:デフォルトの名無しさん
17/12/24 15:27:49.11 dho/ilxra.net
何かが逆でワロタ。

727:デフォルトの名無しさん
17/12/24 15:36:05.76 6Phr71Y20.net
>>704
A1からI5のセルを桁指定したいんだ。
どうすればいいか教えてくれ

728:デフォルトの名無しさん
17/12/24 15:53:02.16 sjlc/tcta.net
>>707
A1からI5の範囲に初期化したばかりのu(=0)を入れてる。
入れるのは逆で、入れた後で桁変更して戻す必要もある。
最初からuを使わずに自分自身に桁変更した自分を入れる方が普通かな。
そもそも見た目だけ桁指定する方が一般的だと思うが。

729:デフォルトの名無しさん
17/12/24 15:54:56.74 CcW1Sn5Aa.net
桁指定したいならexcel vba 書式設定
でググりなさい

730:デフォルトの名無しさん
17/12/24 15:56:16.29 CBEBXlX2a.net
というか、値が複数(配列)だから一発でいけないだろ。

731:デフォルトの名無しさん
17/12/24 15:56:53.27 JTJf6bSC0.net
それぞれの行のB列からC列を引きたいのですが、下のコードだと
すべてB2-C2となってしまいます。
どうすればよろしいかご教示ください。
Dim i As Long
Dim Lrow As Long
Lrow = Cells(Rows.Count, "A").End(xlUp).Row
For i = 2 To Lrow
Cells(i, "D").Formula = "=B2-C2"
Next

732:デフォルトの名無しさん
17/12/24 16:09:57.86 U3mSSLWjx.net
>>711
数式書き込んでるループ内の処理の右辺を
"=$B" & i & "-" & "$C" & i
にするだけ
折角行インデックスをiで指定してループ回してるんだから使わないと
この程度のことだったらVBA使わなくても組み込みのテーブル機能で実現できるけどね

733:デフォルトの名無しさん
17/12/24 16:11:04.02 O2udkTbW0.net
>>711
Sub foo()
Cells(2, 4).Formula = "= B2 - C2"
Cells(2, 4).Copy
Lrow = Cells(Rows.Count, 1).End(xlUp).Row
Range(Cells(2, 4), Cells(Lrow, 4)).PasteSpecial
End Sub

734:デフォルトの名無しさん
17/12/24 16:13:21.90 JTJf6bSC0.net
>>712>>713
ありがとうございました。

735:デフォルトの名無しさん
17/12/24 17:56:35.14 ZKd7S1fn0.net
>>701-702
コードはあくまでも例で、実際はURLや文書内の文字列から判定しています
今回問題なのは、CreateObject("Shell.Application").WindowsをFor Eachで全要素を調べても、要素にそもそも含まれていない点です
IEの子窓として存在しており、タスクマネージャーで調べるとプロセスも存在するのに、IEオブジェクトを取得できません
しかし、WindowsAPIのFindWindowを用いるとハンドルの取得は可能だったので、
Set objIE = MAGIC(hWnd)のような形でハンドルからIEオブジェクトを取得する関数を作れないか質問させていただきました

736:デフォルトの名無しさん
17/12/24 19:48:46.67 TDjZS1ex0.net
Excel2010です
以下のコードを実行すると、"$A$2"が表示されます。
セル範囲に添字0を付けた場合、セル範囲の先頭セルが参照される
(この場合B2)と思い込んでいたのですが、私の誤りでしょうか?
MsgBox(worksheets(1).range("B2:C3")(0).address)

737:デフォルトの名無しさん
17/12/24 21:16:40.55 ODr8GH0o0.net
0 じゃなく 1

738:デフォルトの名無しさん
17/12/24 22:01:25.06 TDjZS1ex0.net
>>717
ありがとうございます
OffSet()だと原点がゼロなので
そういうのと混同していたかも知れません

739:デフォルトの名無しさん
17/12/24 22:44:17.96 4FfGU/eI0.net
Dim FSO As Object
Set FSO = CreateObject("scripting.filesystemobject")
Dim folder As Object
Set folder = FSO.getfolder(ファイルパス)
Dim f As Object
 For Each f In folder.Files
  If f.Name Like "*" & Month(Date) & "*" Then
   ’ここでファイル名を翌月に変えてコピーを作成したい
  End If
 Next
ファイル名は「AAA〇〇月BBB」で統一(ABは文字列で〇〇は月を二桁表示)
抽出できた今月ファイルをコピーして名前の〇〇を翌月に変更したもの(翌月ファイル)を同フォルダ内に作成したいです
コピー元ファイル名を継承して一部だけ変更する良い方法が見つからなかったので教えてください

740:デフォルトの名無しさん
17/12/24 23:29:24.13 XB6s5ekxa.net
>>714
そのセル全部のRangeに対して"=B2-C2"でいける。

741:デフォルトの名無しさん
17/12/25 00:16:31.32 2KDGjSox0.net
>>719
Sub foo(FolderPath As String)
Dim FSO As New FileSystemObject
Dim c As New Collection
Dim Folder As Folder
Dim File As File
FindWord = "*" & Month(Date) & "*"
Set Folder = FSO.GetFolder(FolderPath)
For Each File In Folder.Files
If File.Name Like FindWord Then Exit For
Next
If File Is Nothing Then Exit Sub
s = Split(File.Path, "\")
For i = LBound(s) To UBound(s)
If s(i) Like FindWord Then
e = Split(s(i), ".")
s(i) = Month(DateAdd("m", 1, Date)) & s(1)
End If
FilePath = FilePath & s(i)
If i < UBound(s) Then FilePath = FilePath & "\"
Next
FSO.CopyFile File.Path, FilePath
End Sub
試してないけどこんな感じかなぁ。

742:デフォルトの名無しさん
17/12/25 08:06:21.04 fMKsEfdQa.net
>>719
fileName = Replace(fileName,○○,××)

743:デフォルトの名無しさん
17/12/25 08:07:54.57 fMKsEfdQa.net
ああ、AAAとBBBに数字がない前提じゃないとダメだな

744:717
17/12/25 12:59:33.91 5/ecyLcnM.net
>>721>>722回答ありがとうございます
まだ試せていませんが
AAA○○月BBBじゃなくて
AAABBB○○月にした場合もう少し簡単に記述出来ますかね?
ちなみにABに数字は含まれてないです

745:デフォルトの名無しさん
17/12/25 16:18:43.87 dIh/hlW50.net
んんんんあああああああああああああああああああああああああああああああああ

746:デフォルトの名無しさん
17/12/25 16:44:33.34 DuOFgh3Va.net
コピーしてファイル名置換するだけでしょ?
フォルダもすでに取得してるなら
fso.copyfile file.Path,folder.Path & "\" & Replace(file.Name,"○○","××")
だけで行けるんじゃね

747:デフォルトの名無しさん
17/12/25 17:30:49.11 1470x9yD0.net
UserFormに「次へ」のボタンをつくり複数のUserFormを次々と経由することで対話式に値を取得していきたいと思っています
誤った選択をしてしまった場合に備え、戻るボタンも作るとします
○UserForm1の「次へ」ボタンのクリックイベントに以下のように記述しました
Me.Hide
UserForm2.Show
○そしてUserForm2の「戻る」ボタンのクリックイベントには以下のように
Me.Hide
UserForm1.Show
うまくいったと思いきや、一度1に戻ってからもう一度UserForm2を再表示させると
UserForm2のinitializeに書いた処理が実行されません。
仕方が無いので1の次へに
UserForm2.Show
Unload Me
と書いてみると、今度は2から戻る時に、「フォームは既に表示されています。モーダルに表示できません」と出ます
2の「戻る」には上に書いたようにMe.Hideがあるにも関わらずこのエラー表示
解決法はありますか?

748:デフォルトの名無しさん
17/12/25 17:46:45.39 DuOFgh3Va.net
>>727
ユーザーフォームの行き来はめんどくさいしスパゲティになりがちだからやめた方がいいと思う
というのはさておき、initializeじゃなくてactivateイベントにしてみたらどうかね

749:デフォルトの名無しさん
17/12/25 17:48:18.57 1470x9yD0.net
いやいや何か間違えてる
修正
仕方が無いので2の「戻る」に
UserForm1.Show
Unload Me
と書いてみると、今度は1から2にもう一度行こうとすると、「フォームは既に表示されています。モーダルに表示できません」と出ます
ついでにとにかくhideは避けてすべてunloadにしてもやはり2→1の段階で同じアラート
解決法はありますか?

750:デフォルトの名無しさん
17/12/25 17:48:59.15 1470x9yD0.net
>>728
ありがとうございます
調べてみます
分からなかったらまた書きますのでお願いします・・・

751:デフォルトの名無しさん
17/12/25 18:01:10.24 1470x9yD0.net
>>728
うまくいったようです
3時間ほど解決法が見つからず頭抱えてました
感謝です

752:デフォルトの名無しさん
17/12/25 22:53:06.92 S4ukHgvI0.net
sub test()
'マクロ起動用


753:エクセルがあるフォルダ内のフォルダ名の取得 Dim strPattern As String Dim strFolder As String strPattern = "C:\xxxxx" strFolder = Dir(strPattern, vbDirectory) Do While Len(strFolder) > 0 If GetAttr(strPattern & strFolder) And vbDirectory Then If strFolder <> "." And strFolder <> ".." Then 'if文始まり '各フォルダ内にあるエクセルファイル名の取得 Dim FSO As Object Set FSO = CreateObject("scripting.filesystemobject") Dim folder As Object Set folder = FSO.getfolder(strPattern & strFolder) Dim f As Object For Each f In folder.Files If f.Name Like "*" & Month(Date) & "*" Then 'ファイルパスに今月が含まれている場合 FSO.copyfile f.Path, folder.Path & "\" & Replace(f.Name, Month(Date), Month(DateAdd("m", 1, Date))) Debug.Print f.Name End If Next End If 'if文終わり End If strFolder = Dir() Loop End Sub 717ですが上の記述で一応期待通りの動作をしてくれました 皆さんありがとうございました ただこれだとファイル名に1〜12の数字を使えなかったりエクセル以外も取得できるのでまだ改良が必要そうです



754:デフォルトの名無しさん
17/12/25 23:30:15.25 63usksBrx.net
>>732
ファイルの種類に関しては、ループ処理の冒頭でFSO.GetExtensionName(f.Path)の戻り値を調べて処理を分岐させるようにすれば、狙った種類のファイルだけを処理できるようになると思うよ

755:デフォルトの名無しさん
17/12/25 23:37:14.60 aEhB4dZD0.net
ググったのですがどうしてもわからないので教えてください
【環境】Windows10、Excel2010
【不具合症状】新規コードの作成ができない
新規bookを作成し、VBEを起動した際、通常はプロジェクトウィンドウに
「Sheet1-3」が表示されるかと思いますが、真っ白なまま何も表示されない状態です。
メニューの「挿入」をクリックしても、標準モジュールがグレイアウトになってしまい、
新規コードの作成が行えない状態です。
ITに相談しても初めての事例とのことでわかりませんでした。
コンパネからのofficeの修復も行いましたが改善されません。
マクロのセキュリティは「全て有効」で設定されています。
xlsm形式で保存もしてみましたがダメでした。
PC再起動も試してみました。
同一PCで、既存作成マクロの実行は行えます。
既存マクロのVBEを起動した際、プロジェクトウィンドウやコードウィンドウは
普通に見えますが、コードウィンドウで1文字でも編集すると、F5実行時に
「ファイルが見つかりません」とのエラーが出ます。ステップ実行でも同じです。
編集は例えコメント行でも同じエラーが出ます。
新規作成は全てにおいて不可です。
自動記録をしようとすると「マクロが記録できませんでした」とエラーが出ます。
マクロの作成ボタンは押せますが、押してもコードウィンドウが起動しません。
新規作成と編集が制限されているようなのですが、どこから変更するのかが
どうしてもわかりませんでした。もしわかる方いらしたら教えていただけないでしょうか?
スレチであれば、該当スレッドに誘導していただけると助かります。
よろしくお願いします。

756:デフォルトの名無しさん
17/12/26 01:59:52.47 fIC/1lmja.net
>>734
エクセルのレジストリ削除してみてもダメ?

757:デフォルトの名無しさん
17/12/26 06:55:25.36 cWcYrW8d0.net
>>734
そのマシンに新規ユーザーつくって現象が発生する?
テンポラリやら消したら直るかもしれん
あとセキュリティ対策ソフト切って試すとか

758:デフォルトの名無しさん
17/12/26 06:58:32.09 gkP6o6Ks0.net
>>719
「01月」というファイル名のコピーが、「02月」として、同じフォルダに入れるのか
フォルダ内に、「01月」「02月」があるとして、
この状態で、もう一度、同じ事をするなよ!w
設計として、同じフォルダに入れるのはおかしい。
異なるフォルダに入れるべき
わかりやすいように投稿する時は、名前欄に、717 と入れてくれ

759:デフォルトの名無しさん
17/12/26 07:54:39.17 6qOsufVw0.net
>>735
>>736
732です、レスありがとうございます。
最悪、officeの再インストールも覚悟しています。
レジストリかも?とはITには言われましたが・・・・
新規ユーザーはまだ試していません。
セキュリティ対策ソフトはITの管轄なので、切れるかどうか不明ですが
聞いてみます。
こちらの書き込みは自宅からなので、次のレスが遅くなるかもしれません。
よろしくお願いします。

760:デフォルトの名無しさん
17/12/26 08:20:51.65 upqov7ALa.net
>>737
運用の話までは管轄外じゃね
あとは自分で考えりゃいいよ

761:デフォルトの名無しさん
17/12/27 09:27:07.83 58xyBvha0.net
>>721とか>>732とかのコードで意味わかんないところがいくつかある
(コードが間違ってるって意味じゃなくて、こっちの知識が足りなくて理解が追い付かないって意味です)
まず>>721
なんでコレクションを宣言してるのか?
しかもなぜ宣言したのに使わないのか?
変数eは何のために使ってるのか?
ファイルのパスをsplitで分割してるけど、
ファイル名だったらinstrrevで\を探したほうが話が早いんじゃないか?
等々
>>732
ループの中でdim使うのは大丈夫なの?
複数回宣言したらエラーになりそう
後、一番知りたいのが
If strFolder <> "." And strFolder <> ".." Then
これ、どういう意味なのか解説をお願いしたい
(書いてる人たちにケチつけてるんじゃなくて、本当に分らない事を教えて欲しいだけです)
どなたか教えてください、よろしくお願いします

762:デフォルトの名無しさん
17/12/27 09:45:06.41 fOQst04i0.net
>>740
コマンドプロンプトで cd .. って打ってみたら判る 
c:>test>test1> cd ..
親ディレクトリに移動する。つまり親フォルダの事
「.」 は「.」 カレントフォルダの事

763:デフォルトの名無しさん
17/12/27 10:22:00.13 fOQst04i0.net
寝ぼけて書いてたからめちゃくちゃだな^^;
c:\test\test1> というフォルダがあったとしてそこで
c:\test\test1>cd .. と打てば
c:\test> と親ディレクトリ(フォルダ)に移動する

764:デフォルトの名無しさん
17/12/27 10:45:52.46 90Vjgj1Fa.net
>>740
ループ内でDimしてもエラーにはならないよ
その都度メモリが割り当てられるだけじゃないかな
フォルダ名の"."と".."は相対パスじゃなかったかな
一個上と二個上の親フォルダだったと思う
間違ってるかもしれないから調べてね

765:デフォルトの名無しさん
17/12/27 10:46:46.56 90Vjgj1Fa.net
あ、間違ってたw
.がカレントフォルダで..がひとつ上の親フォルダね
すんませんな

766:デフォルトの名無しさん
17/12/27 10:48:05.37 90Vjgj1Fa.net
あとsplitの問題に関しては読みやすさとか書きやすさじゃね
俺もよくやる
楽だからね

767:デフォルトの名無しさん
17/12/27 12:51:59.50 u0gTyM9V0.net
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 と入れてくれ

768:744
17/12/27 12:58:13.04 u0gTyM9V0.net
間違っていたので、修正した
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月い

769:デフォルトの名無しさん
17/12/27 13:38:32.87 lJNZ7xHQ0.net
VBA勉強し始めて間もない時に組んだマクロに
replaceという名前のプロシージャを作りました
そのことはすっかり忘れてたのですが、最近になってそのマクロを手直しする必要があって
その中でReplace関数を使おうとしたらエラーが出る
おかしいなと思い調べてみたらSub replace() を発見
プロシージャの名前を変えたら大丈夫かと思いきやなぜかどこかに何かが残っているようでエラーがでる
一旦そのモジュールを解放したらReplace関数は使えるようにはなりました
しかし、なぜかReplaceと打ってもreplaceとなる
replaceと打ってもそのままreplace
replaceをReplace関数と認識してくれてはいるものの、どこかに何かが残っている
他のブックでは起きないのでまぁそれほど支障はないものの、もし分かる方いらっしゃったら
どうすればいいか教えてください

770:デフォルトの名無しさん
17/12/27 13:47:19.08 fCTi8N3va.net
Replaceで変数宣言してみ

771:デフォルトの名無しさん
17/12/27 15:20:29.55 DW1nj5RcM.net
>>748
大文字小文字は、現在開いてるコード全体で統一されてしまうからな。
変数でもプロシャージャでもいいから、定義し直すと内部で覚えてる大文字小文字が上書きされるぽ
この仕様のせいで、他人の書いたブック開いたまま修正保存するといつのまにか変わってたりする。
するとWinMergeとかでDIFFしたときにイラッ
独り言でした

772:デフォルトの名無しさん
17/12/27 18:43:06.62 8Kp24ZKYM.net
プロシージャ外に書いたオブジェクトの寿命はいつまでなのでしょうか?
グローバル変数にオブジェクトを保存してそれをfunctionで返すシングルトンオブジェクトを作ったのですが、
プログラムが一度終了して再度起動した際もオブジェクトが残っており、ゴミデータでエラーが起きています。
一度ファイルを全て閉じるまでは残るものなのでしょうか?

773:デフォルトの名無しさん
17/12/27 18:55:21.26 K6GLaCg8a.net
>>751
グローバル変数ならエラーで止まるかブックが生きてる限りは生きてるんじゃね

774:デフォルトの名無しさん
17/12/27 19:03:21.38 4eyrVwN9H.net
>>751
あとEndで止めると死ぬ

775:デフォルトの名無しさん
17/12/27 20:23:28.17 ry3vSREld.net
>>753
End なあ、せめて Class_Terminate()して欲しかった

776:デフォルトの名無しさん
17/12/27 20:40:54.92 RyDVOJzS0.net
>>734 です。
officeの再インストール試してみましたが
不具合解消せずでした・・・・無念
幸い既存マクロは動くので、新規作成と実行は
他のPCでやることにしました。
不具合はExcelだけで、Accessでは特に問題ありませんでした。
一応ご報告まで。

777:デフォルトの名無しさん
17/12/27 20:55:52.26 K6GLaCg8a.net
>>754
てか、マクロ終わったら初期化すりゃよくね?
できない仕様なの?

778:デフォルトの名無しさん
17/12/27 21:08:27.21 CubzVxEy0.net
>>756
マクロ終わったら誰が初期化するん?

779:デフォルトの名無しさん
17/12/27 23:24:01.01 TIhBPqs40.net
>>755
マクロの記録から操作を記録すると
標準モジュール作成される?

780:デフォルトの名無しさん
17/12/27 23:29:35.39 0b7v1yOK0.net
>>753
Endだとなにがまずいのでしょうか

781:デフォルトの名無しさん
17/12/28 02:02:28.11 uSnaEunu0.net
>>759
Globalで保持していると想定していた変数がいつのまにかクリアされていて想定外の動作をおこし痛い目にあったことがあります。
調べてみたら、エラー発生時またはEnd通過時にGlobal変数の寿命が尽きるようで、、
それ以来、Global変数もEnd Statementも避けています。
記憶が必要な場合は、Cell値やValidation値またはDocumentProperty等を使うようになりました。

782:デフォルトの名無しさん
17/12/28 02:45:31.50 m7DZbaKUH.net
VBA初心者です
2つのセルがイコールになるように別のセルの値を変化させるというVBAソルバを作成したいのですが、エラーばかりで全く進みません・・・
現在は7行目から10行目まで構文エラーが出ています。
どなたかご教


783:願います・・・ 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



784:デフォルトの名無しさん
17/12/28 05:04:43.84 BF7frMSQ0.net
>>749
>>750
ありがとうございました。

785:デフォルトの名無しさん
17/12/28 08:06:18.47 VokPBxMja.net
>>757
マクロ終わったらオブジェクト破棄するんじゃダメなのかと言うことだが
まあダメな使用なんだろうけど

786:デフォルトの名無しさん
17/12/28 08:14:47.46 ezpQ52SId.net
イミディエイトウィンドウにあるオブジェクトのことだよね

787:デフォルトの名無しさん
17/12/28 17:26:42.52 GeC01ME+0.net
>>751,760
そもそもプログラムが終了ってどういう事をさしてる?
ホントにプログラムが終了すれば、すべての変数の内容は失われるよ
たんに実行するコードが無くなっただけではプログラムは終了していない
Endはプログラムを終了させるけど、エラー出ただけでは終了するとは限らない
デバッグで再実行や変数見たりできるのはプログラムは中断したけど終了してないから

788:753
17/12/28 23:10:38.77 lWNTZScR0.net
>>758
753です。
マクロの記録そのものができないのです。
記録しようとすると「マクロの記録ができませんでした」と
エラーが出てしまいます。
新規作成と編集が全て制限されているようです。
セキュリティは「すべて有効」で設定しており、
そこでの問題は無いと思うのですが・・・・

789:デフォルトの名無しさん
17/12/29 04:00:07.55 G/qmS2zk0.net
>>761
"_" は次の行をつなげるためにつけたのだろうけど
Application.DisplayAlearts = True の前の行にも "_" が付いているから
何か貼り付け忘れか、間違って削除してしまったものがあるのでは

790:デフォルトの名無しさん
17/12/29 04:08:47.98 G/qmS2zk0.net
セキュリティーレベル一番高いとダメなんじゃね

791:デフォルトの名無しさん
17/12/29 07:22:34.45 b/Z/hzqU0.net
>>734
あー、昔そんな事象に当たったことあるよ
原因は同じかどうかは分からんけど
俺の場合とんでもなく深い階層のフォルダに置いてたら
VBEのシートモジュールが青く表示されてコードが作成できなくなった
そのファイル、とりあえず浅い階層のフォルダや
どこかのサーバに置いているなら
クライアント側にコピーして内容確認出来る?

792:デフォルトの名無しさん
17/12/29 08:53:00.31 JNsjSKSN0.net
732、753です
皆様レスありがとうございます。
作成の不具合は、全くの新規Bookでも起こります。
既存マクロの場合は、コードの表示と実行は行えますが
編集が制限されています。
問題が発生してから、他のPCで新規作成したマクロを
該当PCで実行しようとしましたが、それはコードの表示すら
できませんでした。ファイルサーバー経由とかではなく
デスクトップ上に置いて実行しても同じです。
Accessでは特に問題ないので、VBAそのものではなく、
Excel単体の何かだとは思うのですが、皆目見当がつきませぬ。

793:デフォルトの名無しさん
17/12/29 10:57:41.44 MXSoKJ1y0.net
>>767
>>761です
一部コピペして使ったので何か消してしまったのかもしれません・・・
確認してみます、ありがとうございます。

794:デフォルトの名無しさん
17/12/30 12:22:18.46 cGzM6pFo0.net
CreateObject("System.Collections.ArrayList")ってやったら
.NETのArrayListがVBAで使えてしまったんですが
これ隠し機能とかじゃなくて正式に使っていいんですよね?

795:デフォルトの名無しさん
17/12/30 13:25:09.57 dKM8JRI70.net
前にも話題に上がったけど
.NETのほんの一部はVBAからも使える
リファレンスにも書いてあったような気がする
他で代替できるのでArrayListをわざわざ使うメリットはないということで
その


796:ときは終わったと思う



797:デフォルトの名無しさん
17/12/30 15:32:35.43 cGzM6pFo0.net
>>773
参考にします。ありがとうございました

798:デフォルトの名無しさん
17/12/30 15:33:00.15 xXJ5T9Ia0.net
>>772
.Net Frameworkの機能でコンストラクタに引数を渡す必要のないものは使えるらしい
>>773
ArrayListは各種メソッドが揃ってるからコレクションより使いやすいんじゃね?キーを使わないなら
ただ遅いのがたまに傷

799:デフォルトの名無しさん
17/12/31 01:12:29.94 z2hgHR3O8
フォルダ(C:\print)内の複数のPDFファイル(ファイル名不規則)を、各々1頁目のみ連続印刷したいと思ってます。
VBAやコマンドライン初心者ですが、ネットで調べたところPDF xchange viewerのコマンドラインで1頁目のみ連続印刷する方法はわかりました。
しかし、下記のように各ファイルについてファイル名もパスも記載しないとダメなようでした。
PDFXCview.exe /print:pages=1 C:\print\123.pdf C:\print\abc.pdf

VBAの方では下記のように*.pdfでファイル名必要なく連続印刷できますが頁指定の仕方が分かりません。
/tをとれば印刷ダイアログ開いて頁指定できますが、いちいち全てのファイルについて指定しないといけないので余り意味がありません。
何か良い方法がないでしょうか。
Sub pdf印刷()
Dim strPath As String
Dim strFilename As String
Dim myShell As Object
Set myShell = CreateObject("WScript.Shell")
strPath = "C:\print"
strFilename = Dir(strPath & "\*.pdf")
Do While strFilename <> ""
myShell.Run ("AcroRd32 /t " & strPath & "\" & strFilename)
strFilename = Dir
Loop
Set myShell = Nothing
End Sub

800:デフォルトの名無しさん
17/12/31 08:34:16.68 5sx4VZ0k0.net
>>774
Windows APIだって使えるんだぞ?

801:デフォルトの名無しさん
17/12/31 08:58:37.79 TXRnAgcd0.net
VBAの保存方法について
バックアップどうしてますか?
VBAのマクロだと戻る釦聞かないし、バグって復旧するとマクロの個所全部消えちゃうので2つくらいのバックアップを別ファイルでとってあるんですけど皆さんはどうしてますか?
まだ素人なので思ったのと違う処理になって戻せなくなることがしょっちゅうあるので
バックアップは大事

802:775
17/12/31 09:02:17.31 TXRnAgcd0.net
>>778
戻る釦ってまるい矢印の奴ね

803:デフォルトの名無しさん
17/12/31 09:09:26.61 PwPBZUwb0.net
>>778
バージョン管理システム入れてないなら同じになるでしょ。
俺も同じくでファイル名_Ver nnn.xlsmと言うかたちで3世代別フォルダに保存してるけど
(時たま忘れたりする^^;

804:デフォルトの名無しさん
17/12/31 09:49:30.47 aMifsa1T0.net
マクロ有りエクセルファイル自体にデータを入れて運用するのと、
データは別エクセルファイルにしてマクロ有りエクセルファイルでデータ入りエクセルファイルを操作するのと、
どっちがメンテナンスしやすい作り方だろうか?
いつも悩んでしまう

805:デフォルトの名無しさん
17/12/31 09:52:29.70 35C6Q16O0.net
アドインマクロにしましょう

806:デフォルトの名無しさん
17/12/31 11:06:17.25 fsRyV04Q0.net
マクロのバージョン管理ってどうやってます?
インポートファイルを分けすぎると不便なのでshareFanction見たいなインポートファイルに使いそうな関数全部入れてますが、初心者なもので開発中に関数の引数や戻り値を変えたくなるような場面が多々あり
今までのshareFanctionと互換性が保てなくなりますが、引数と戻り値を修正した関数以外でバグを潰したような関数は最新を使用したいです。
今はコピペで対応してますが

807:デフォルトの名無しさん
17/12/31 11:27:58.03 rNrttlhS0.net
個人なのか仕事なのか書かないと有効なレスがつかないのではないかな

808:デフォルトの名無しさん
17/12/31 11:34:47.18 fsRyV04Q0.net
>>784
個人です
個人で開発、個人で使用


809:ナす



810:デフォルトの名無しさん
17/12/31 11:36:51.05 rNrttlhS0.net
>>785
ならGithubとSourceTreeで快適にできるんじゃないの?
俺も全然高度な使いこなしできてないけど楽ちんだ

811:デフォルトの名無しさん
17/12/31 11:55:17.97 fsRyV04Q0.net
>>786
ありがとうございます
ざっとみた感じソースファイルのバージョン管理はできそうですが、
例えばサーバーあるいはローカルマシン上にそのshareFanctionを使用している分散しておいてある場合、
それぞれのマクロを調べて更新したいファイルを選択、修正版マクロを適用する、
みたいな使い方ってできるんですかね?


次ページ
最新レス表示
スレッドの検索
類似スレ一覧
話題のニュース
おまかせリスト
▼オプションを表示
暇つぶし2ch

2252日前に更新/339 KB
担当:undef