Excel VBA 質問スレ Part65

レス数が1000を超えています。これ以上書き込みはできません。
2020/03/17(火) 16:27:20.88ID:hh8LiIgR0

ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK

※前スレ
Excel VBA 質問スレ Part64
https://mevius.5ch.net/test/read.cgi/tech/1575297834/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2020/05/08(金) 20:43:59.77ID:1Hremoh70
2000
953デフォルトの名無しさん (アウアウウー Sa1f-2+Ho)
垢版 |
2020/05/08(金) 21:13:02.00ID:oLBub1X/a
vbaでハイパーリンク設定済み場所から
フルパスを取得したいです。

https://www.google.co.jp/amp/s/gamp.ameblo.jp/ksej/entry-11288945247.html

このサイトの方法でネットワーク上のアドレス取得して
あるセルにフルパスを貼りたいんだけど
カレントディレクトリが¥¥A¥B¥C
とあったら、¥¥A¥Bまでしか貼り付けに反映されないのってなぜかわかりますか?

msgboxでカレントディレクトリだけ表示させたら
Cまで表示されますが貼り付けたらBまでしか表示されない感じです。

あとカレントフォルダの設定はこのサイトの方法です。
https://vbabeginner.net/vbaでネットワークドライブにカレントを変更する/
2020/05/08(金) 21:31:38.77ID:KpBIrL5Ad
>>948
くだらねえ煽りの前にお前が日本語を理解出来て無かったのが分かったのか?
そして今は理解出来てるんだろうな?
2020/05/08(金) 21:32:10.12ID:KpBIrL5Ad
>>948
そしてもう1つ。
質問の内容とか考えた?
2020/05/08(金) 21:43:28.38ID:KpBIrL5Ad
>>949
Shellは待たされないと思うぞ。
待つにはタスクからプロセスハンドルを得て、WaitForSingleObjectとかを使う筈。
←たしかこいつは古いんで今は似た名前の奴を使う。
957デフォルトの名無しさん (ワッチョイ 738e-jYUs)
垢版 |
2020/05/08(金) 22:58:17.96ID:AMoglHga0
>>953
ただのコピペしかできない馬鹿だからだろ
958デフォルトの名無しさん (アウアウウー Sa1f-2+Ho)
垢版 |
2020/05/08(金) 23:39:12.99ID:oLBub1X/a
>>957
他のサイトも色々見て調べたり試行錯誤したのですが
Cが表示されなくて。

何か縛り的なのがあるかわかりますか。
貼り付け時の表示文字数に制限があるとか。

最悪わからなければ、
¥¥からCまでを取得したものをセルに貼り付けて
C以降を貼り付けたものを&で繋げて使おうか迷ってます。
2020/05/08(金) 23:49:29.90ID:7LgH0Xf00
>>953
最小限のコードで実験してみ?
(1)ワークシートにハイパーリンク設定
(2)FSOでフルパス取得
(3)MsgBoxで確認
(4)セルにフルパスの文字列を入れる
960デフォルトの名無しさん (アウアウウー Sa1f-2+Ho)
垢版 |
2020/05/08(金) 23:56:44.70ID:oLBub1X/a
1)と2)と4)についてはBまでの表示

3)についてはフルパスでは試してないので、試して見ます。

ちなみに3)はカレントディレクトリのみで行うと、Cまで表示されて、次の行に2)を試すとBまでになってしまいます。
2020/05/09(土) 00:37:26.19ID:SO2yq4ky0
>>954
質問どんどん来てるよww
10年やってきたんだから早く5通り以上答えてあげなよww
そしてリファクタリング出来たらその都度書き込んでなw

>出来る奴は瞬時に何通りかは思いつく。

>もっとも、これ10年以上前の話だし、それで修正するとかいう話でもないけどな。

>瞬時に5通り思いついたとして、5年後に知らない技術を獲得した時に、あの時これ使えばもっと良くなったなあと思うとか。
2020/05/09(土) 09:12:02.43ID:jb1+fPLha
>>956
思うぞと言われても実際待たされてるから困ってるんだが。

検索しても待つ方法しか引っかからんし…
CPU使用率が上がるとVBAスクリプトが止まるとかそういうわけじゃないよね
2020/05/09(土) 09:12:34.65ID:5lxB5cuMr
パスとドライブの違いわかってる?
uncパスの形式わかってる?
そのaもbもフォルダじゃないけど、なにをどうやって表示させた?
2020/05/09(土) 10:41:18.50ID:OK904gHA0
最小限のコードでテストしてみた
Excel2019のshell関数でバッチの同時起動できてるから原因は別の所にある
https://i.imgur.com/bqqc2uc.png
2020/05/09(土) 11:14:42.24ID:m7V0shMq0
>>953
ハイパーリンク扱う時って表示文字列とアドレスの2つがあった気がするが関係ないか?
966デフォルトの名無しさん (ワッチョイ 8f59-2+Ho)
垢版 |
2020/05/09(土) 12:02:06.49ID:zV8Vx2bY0
>>963
わかりにくくてすいません。

abcは仮に書いた感じで、実際はネットワーク上のフォルダ名になります。
2020/05/09(土) 12:06:22.54ID:OK904gHA0
>>966
何をやろうとしてるのかイマイチよくわからん
試したコードとワークシートのスクショをここに書いて
2020/05/09(土) 12:11:35.33ID:74X5YOol0
>>961
日本語が理解出来てたのか出来て無かったのかどっちだい?
話はそれからだ。
969デフォルトの名無しさん (ワッチョイ 8f59-2+Ho)
垢版 |
2020/05/09(土) 12:17:50.79ID:zV8Vx2bY0
>>967

ネットワーク上にあるエクセルファイルで、
相対参照で貼り付けされたハイパーリンクがあるんですが
それを絶対参照で取得したいです。

カレントディレクトリを¥¥a¥¥b¥¥cで設定し
GetAbsolutePathNameで取得しあるセルに貼り付けると
なぜか¥¥a¥b¥取得したパス.xlsxになります。
カレントディレクトリをmsgboxで表示すると¥¥a¥b¥cとなります。

今端末が手元にないので、スクショ取れるようになり次第
対応します。

助かります。
970デフォルトの名無しさん (ワッチョイ 8f59-2+Ho)
垢版 |
2020/05/09(土) 12:23:23.31ID:zV8Vx2bY0
>>965
アドレスを変更しています。
2020/05/09(土) 12:40:40.05ID:5ucHUX9S0
どうやってvba勉強した?
2020/05/09(土) 12:48:47.19ID:drDVgFRjH
いくつか他の言語はできるからなんとなく雰囲気で
特に勉強はしていない
2020/05/09(土) 13:04:53.46ID:74X5YOol0
>>962
何となく分かった。
待たされたんじゃなくてフォーカスがバッチファイルにある。

よく、たくさんのウィンドウが開いてる時なんかにメッセージを表示しようとタスクバー上で点滅してるのと同じ現象。
バッチファイル実行中にExcelをクリックするとすぐ実行されるよ。

Shellの第2引数にvbNormalNoFocusを指定してみよう。
2020/05/09(土) 13:16:32.84ID:74X5YOol0
>>969
カレントディレクトリとは何かを調べた方が良い。
これはエクセルファイルだとかに関係が無い。
動いている場所だ。
ブックのある場所でも無い。

ハイパーリンクの相対参照、絶対参照の操作でカレントディレクトリが関係することは無い。
2020/05/09(土) 13:16:59.46ID:hJO1Owz9d
>>971
マイコンBASICマガジンのゲームがやりたくて覚えた
子供は記憶力がいいからすぐ覚えた
大人になってから始める人は大変だろうね
976デフォルトの名無しさん (ワッチョイ 738e-jYUs)
垢版 |
2020/05/09(土) 13:21:14.53ID:WSrPnN3q0
意味もわからずただコピペしかできない馬鹿には無理
2020/05/09(土) 13:25:01.47ID:SO2yq4ky0
>>968
話はそれからだ、ってコード5つ提示もしないで答えない10年経験者に言われてもなあww
ほらコード5つ提示して答えてあげなよw

>出来る奴は瞬時に何通りかは思いつく。

>もっとも、これ10年以上前の話だし、それで修正するとかいう話でもないけどな。

>瞬時に5通り思いついたとして、5年後に知らない技術を獲得した時に、あの時これ使えばもっと良くなったなあと思うとか。
978デフォルトの名無しさん (ワッチョイ 8f59-2+Ho)
垢版 |
2020/05/09(土) 13:27:57.61ID:zV8Vx2bY0
>>974
ご指摘ありがとうございます。

相対参照だと./や../で省略されてしまうので
省略される箇所(ネットワーク上(インターネット上ではない)の決まったフォルダ)
を指定するためにカレントディレクトリで設定していました。

ちなみに複数端末でファイルを操作する事を想定しています。

もう少し勉強します。
2020/05/09(土) 13:33:59.72ID:74X5YOol0
>>977
やっぱり日本語分かってねえじゃんwww
2020/05/09(土) 13:40:39.44ID:m7V0shMq0
>>969
ネットワーク上にあるエクセルファイルはUNCパスになるので
ディレクトリ構成はサーバー上での階層
一番上はサーバーのIPアドレス(DNSで変換された名前)
2020/05/09(土) 14:38:22.98ID:SO2yq4ky0
>>979
自分の言ったこと分かってねえじゃんww

>出来る奴は瞬時に何通りかは思いつく。

>もっとも、これ10年以上前の話だし、それで修正するとかいう話でもないけどな。

>瞬時に5通り思いついたとして、5年後に知らない技術を獲得した時に、あの時これ使えばもっと良くなったなあと思うとか。
2020/05/09(土) 15:54:31.92ID:INzaqzr5M
議論してるところ申し訳ないけど
>>928
わかる方お願いできますか
2020/05/09(土) 15:58:18.33ID:JX27GBwZ0
>>982
合ってるよ
2020/05/09(土) 16:04:20.17ID:74X5YOol0
>>981
バ一カw

>>983
そう、これが正解。
バカと違って質問の意味が分かってる人はこういう答えになるから何通り等の方法等とならないことを知っている。
985デフォルトの名無しさん (ワッチョイ 7332-R2sI)
垢版 |
2020/05/09(土) 18:27:33.02ID:d0o5iTyS0
>>983
便乗してそのコード教えてくれせんか
986デフォルトの名無しさん (バットンキン MMbb-6LGb)
垢版 |
2020/05/09(土) 18:39:39.46ID:3Qrhs3L2M
ある表があって一行ずつアクティブセルをループで下に移動させ、条件があった場合offset で特定のセルを集計するマクロを作成し使用してたんだけど、
アクティブセルじゃなくてcellで置き換えたら実行スピードが早くなった。
やっぱり画面が遷移すると遅くなるんだよね?
オートフィルタ組み込むと遅くなる?
2020/05/09(土) 19:29:16.68ID:SO2yq4ky0
>>984

矛盾しまくってるがww
頭悪いなーVBA10年以上やってるんだろww
瞬時に5通りできるんじゃないんですかー?www

ID:KpBIrL5Ad
ID:74X5YOol0
ID:MibsCGor0

>バカと違って質問の意味が分かってる人はこういう答えになるから何通り等の方法等とならないことを知っている。

>出来る奴は瞬時に何通りかは思いつく。

>もっとも、これ10年以上前の話だし、それで修正するとかいう話でもないけどな。

>瞬時に5通り思いついたとして、5年後に知らない技術を獲得した時に、あの時これ使えばもっと良くなったなあと思うとか。
988デフォルトの名無しさん (ワッチョイ 0b87-YOOL)
垢版 |
2020/05/09(土) 19:48:20.99ID:YHeP8Ot70
>>985
死ねよ
2020/05/09(土) 20:09:54.40ID:7P+we5mg0
フォームからシートにデータを入力する場合、セルに値を入れるコードはどちらに書く方が良いのでしょうか。
シート側に関数処理書いて、フォーム側から引数渡す形を考えていますが、本来はどういう使い方なのかわからず。
2020/05/09(土) 20:14:54.27ID:m7V0shMq0
>>989
書き方が何通りかある場合、どれを選択するかは作る人が選択すればいい
2020/05/09(土) 20:29:18.83ID:JFqcrtJG0
>>986
表示に影響する処理は速くない
2020/05/09(土) 20:32:02.99ID:JFqcrtJG0
>>989
自分だったらシートには書かない
2020/05/09(土) 21:56:43.63ID:RixiaBnA0
>>989
変なやり方だね
2020/05/09(土) 22:11:53.76ID:yzOAykNA0
>>937
フォームとシートでどちらが主役かで決めるといいと思ったけど
シートをコピーしたときにコードもコピーされて後で大変になるから、シートじゃない方がいいね
2020/05/09(土) 22:12:57.07ID:yzOAykNA0
×>>937
>>989
です
2020/05/09(土) 22:22:33.93ID:7P+we5mg0
ありがとうございます。
フォームのコード量が多くなりますね。別クラスに記述してみます。
2020/05/09(土) 23:28:56.55ID:m7V0shMq0
>>996
お前の仕事はお前が判断すればいい
2020/05/09(土) 23:43:47.15ID:G+eyUkVB0
俺の仕事はお前のものだ。
お前の仕事はお前のものだ。
お前の手柄は俺のもの。
俺の手柄は俺のものだ。

みんな違っていいじゃないか。
だって、人間だもの。
2020/05/10(日) 08:02:11.47ID:Nkoph0aj0
俺の手柄なら金くれ
2020/05/10(日) 08:02:44.03ID:Nkoph0aj0
1000
10011001
垢版 |
Over 1000Thread
このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 53日 15時間 35分 24秒
10021002
垢版 |
Over 1000Thread
5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。


───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────

会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。

▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/

▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況