[過去ログ]
VBAなんでも質問スレ Part2 [転載禁止]©2ch.net (1002レス)
VBAなんでも質問スレ Part2 [転載禁止]©2ch.net http://mevius.5ch.net/test/read.cgi/tech/1432173164/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
271: デフォルトの名無しさん [sage] 2017/02/23(木) 16:14:41.52 ID:5OVH7aZj >>269 > If TypeName(Selection) <> "Range" Then Exit Sub だよ http://mevius.5ch.net/test/read.cgi/tech/1432173164/271
272: デフォルトの名無しさん [sage] 2017/02/26(日) 14:44:16.79 ID:nMuhJunv エクセルのマクロでも質問大丈夫でしょうか? 名前と同じファイル名の画像を名前セルの隣に貼り付けるプログラムなんですが Sub ボタン1_Click() Const n As Long = 2 Dim i As Long Dim x As Double Dim s As String Dim t As FileDialog Dim m As VbMsgBoxResult With ActiveSheet For i = 2 To .Cells(.Rows.Count, 2).End(xlUp).Row Step 6 Set r = .Cells(i, 3).MergeArea s = "D:\画像\1\" & .Cells(i, 2).Value & ".jpg" Dir Application.Path With .Pictures.Insert(s).ShapeRange .LockAspectRatio = msoTrue x = Application.Min(r.Width / .Width, (r.Height - n) / .Height) .Width = .Width * x .Left = r.Left + (r.Width - .Width) / 2 .Top = r.Top + (r.Height - .Height) / 2 End With Next End With End Sub この"D:\画像\1\"の部分をフォルダ選択できるようにしたいので Dim s As String Dim t As FileDialog Set t = Application.FileDialog(msoFileDialogFolderPicker) s = "t" & .Cells(i, 2).Value & ".jpg" としたら「1004 PicturesクラスのInsertプロパティを取得できません。」と実行できません どうしたら"D:\画像\1\"の部分をフォルダ選択できるようにできるのでしょうか?ご教示お願い致します。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/272
273: デフォルトの名無しさん [sage] 2017/02/26(日) 16:00:22.84 ID:nt1S72uw >>272 Dim s As String Dim t As String With Application.FileDialog(msoFileDialogFolderPicker) If .Show = False Then Exit Sub t = .SelectedItems(1) & "\" End With '途中省略 s = t & .Cells(i, 2).Value & ".jpg" じゃないかな? あと 元コードもそうだけど フォルダ内に その画像ファイルが存在してなかった時の対策も必要だと思うよ 同じエラーになるぞ それとも絶対 あるのが 確定してる? http://mevius.5ch.net/test/read.cgi/tech/1432173164/273
274: デフォルトの名無しさん [sage] 2017/02/26(日) 16:45:49.33 ID:nMuhJunv >>273 大変ありがとうございます! ただ、貼り付ける画像は複数あり、貼り付けるたびにフォルダ選択画面が出てしまいますので、一気に貼り付けられないものでしょうか? ファイルが存在してない時の対策は、セルの状態を色変えて罫線で斜線を挿入したいと考えてますが、まだそこまで進む前段階がクリアできないので困ってます よろしくお願いします http://mevius.5ch.net/test/read.cgi/tech/1432173164/274
275: デフォルトの名無しさん [sage] 2017/02/26(日) 16:51:45.39 ID:nt1S72uw >>274 ん? そこは分ってるとおもたよ フォルダ選択部分は Forループの外だよ ↓ここねw With Application.FileDialog(msoFileDialogFolderPicker) If .Show = False Then Exit Sub t = .SelectedItems(1) & "\" End With http://mevius.5ch.net/test/read.cgi/tech/1432173164/275
276: デフォルトの名無しさん [sage] 2017/02/26(日) 16:57:59.74 ID:nMuhJunv >>275 あっ!できました!ありがとうございます!助かりました! http://mevius.5ch.net/test/read.cgi/tech/1432173164/276
277: デフォルトの名無しさん [] 2017/03/06(月) 23:29:36.96 ID:QCgyLcj6 こんにちは。 パワーポイント2013のVBAについて分かる方教えて下さい。 やりたいことは、グラデーションの塗りつぶしがあるシェイプのGradientStopsのそれぞれの色を変化させるアニメーションの方法です。 2013ではできないけど2016ではできる等の情報もあればお願い致します。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/277
278: デフォルトの名無しさん [sage] 2017/03/08(水) 21:50:45.20 ID:DO0ivfK5 vbaだけでhttpサーバーって出来る? http://mevius.5ch.net/test/read.cgi/tech/1432173164/278
279: デフォルトの名無しさん [sage] 2017/03/08(水) 23:04:04.36 ID:Tpob7EG8 俺が手を下すまでもないな 答えてやれよ >>280 http://mevius.5ch.net/test/read.cgi/tech/1432173164/279
280: デフォルトの名無しさん [sage] 2017/03/09(木) 01:39:01.40 ID:UFk6xx1O VBAだけってのが 外部コントロール使用禁止 API呼び出し禁止 なら不可能です http://mevius.5ch.net/test/read.cgi/tech/1432173164/280
281: デフォルトの名無しさん [sage] 2017/04/09(日) 15:56:17.26 ID:9WwYB+FH VBAの変数の値を次回の処理を行う時まで記録しておくのにセルに書き込みをしたりしていますが、 セルにアクセスするのを減らすためにセルに記録しなくて処理終了時に変数値をVBA内で保存しておいてくれる一次記憶領域みたいな物はないのでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1432173164/281
282: デフォルトの名無しさん [sage] 2017/04/09(日) 16:02:56.39 ID:9WwYB+FH ちりも積もればの話ですが 足し算引き算割り算レベルの計算をセルに関数を割り当てて行うのと 同じ計算式を変数を用いてVBAで書いて実行するのとで、より処理速度が速いのはどちらでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1432173164/282
283: デフォルトの名無しさん [sage] 2017/04/09(日) 16:09:57.30 ID:Lq/WJuQk >>281 セルでいいんじゃないの? ただそのIOは配列アクセスを使うべき ループで1セルづつ読み込むとかがナンセンス http://mevius.5ch.net/test/read.cgi/tech/1432173164/283
284: デフォルトの名無しさん [sage] 2017/04/09(日) 16:14:42.36 ID:K8MFArI9 >>281 説明がいまいち分かりにくい。 次回ってのは何時のことを言ってる? グローバルな変数じゃダメなの? 次にそのブックを開くまで保持したいならセルってのも分かるんだが。 で、その場合にセルの代わりに保持したいならCustomDocumetProperties使ったりするかな。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/284
285: デフォルトの名無しさん [sage] 2017/04/09(日) 16:27:32.06 ID:9WwYB+FH >>283 ありがとうございます。 >配列アクセス 勉強してみます。 >>284 Bookを閉じずに他からデーターを取り込み再度VBA実行を繰り返します。 >グローバル変数 >CustomDocumetProperties 勉強してみます。 グローバル変数に代入した数値は処理を中断しても生き続けるのであればそれで解決しそうです。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/285
286: デフォルトの名無しさん [sage] 2017/04/09(日) 16:44:07.10 ID:9WwYB+FH >>284 プロシージャの上に定義すると処理が終了しても最終定義された内容は残ったままなんですね! 今まで処理を中断する必要がある場合は変数をすべてセルに書き出していましたが大発見です。ありがとうございました。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/286
287: デフォルトの名無しさん [sage] 2017/04/09(日) 19:39:59.08 ID:9WwYB+FH Public変数もしくは通常の変数の指定数の限界はあるのでしょうか? 問題なく動くレベルは何個ぐらいでしょうか? 50個 100個 1000個 10000個でも平気だっり? 実は 100000個以上でも問題ないとか? http://mevius.5ch.net/test/read.cgi/tech/1432173164/287
288: デフォルトの名無しさん [sage] 2017/04/09(日) 19:51:50.86 ID:0T9WQSVM >>287 使えるメモリは決まってる 変数の個数じゃなくてそれぞれのバイト数の合計 http://mevius.5ch.net/test/read.cgi/tech/1432173164/288
289: デフォルトの名無しさん [sage] 2017/04/09(日) 23:55:43.90 ID:K8MFArI9 >>287 グローバル変数(Public)は便利に見えるけどスコープを考えて必要無い所では使わない方が良い。 PublicかPrivateかプロシージャ内で宣言するかを意識して使った方が良いね。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/289
290: デフォルトの名無しさん [sage] 2017/04/10(月) 02:47:06.39 ID:AhmZ51rM 日曜の午後からずっとVBAを書いてるけどまだおわらね〜 てかやればやるほど選択肢が爆発的に増えてきて一生かかってもおわりそうにね〜!w http://mevius.5ch.net/test/read.cgi/tech/1432173164/290
291: デフォルトの名無しさん [sage] 2017/04/10(月) 04:05:13.85 ID:sRLMXvmn >>287 しかもEndやErrorで抜けたら破棄されるという罠 http://mevius.5ch.net/test/read.cgi/tech/1432173164/291
292: デフォルトの名無しさん [sage] 2017/04/11(火) 00:40:18.97 ID:egN7ZnVO 素数や組み合わせ爆発のような数学の迷宮的な問題に陥って 一生かかってもコードを完成させるのは無理ですよみたいな場合もあるのでしょうか? http://mevius.5ch.net/test/read.cgi/tech/1432173164/292
293: デフォルトの名無しさん [sage] 2017/04/11(火) 10:41:22.79 ID:Ei1BFwyD >>292 数学的バックグラウンドがなければコードが書けないという類いの問題はあるね。 たとえばNP困難なやつ。 巡回セールスマンとかナップサック問題とか、ナーススケジューリング問題とか。 自力でなければ、それなりの回答が得られる解法(コード)が既に存在してるものもある。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/293
294: デフォルトの名無しさん [sage] 2017/04/11(火) 11:01:45.96 ID:o/k96Ri6 問題を解く方法を考案するのと、その方法をコンピューター言語に翻訳する作業は別ですわ それぞれに異なった知識と才能が必要となりますので http://mevius.5ch.net/test/read.cgi/tech/1432173164/294
295: デフォルトの名無しさん [sage] 2017/04/11(火) 11:03:15.94 ID:6dnWkPrh >>291 End Subの行にブレークポイント、これ http://mevius.5ch.net/test/read.cgi/tech/1432173164/295
296: デフォルトの名無しさん [sage] 2017/04/12(水) 22:41:46.94 ID:iuenojzm パブリック変数で 1000個 10000個でも平気だっり? とかどんな拷問なんだよw http://mevius.5ch.net/test/read.cgi/tech/1432173164/296
297: デフォルトの名無しさん [sage] 2017/04/20(木) 23:26:11.80 ID:92wBssf5 テストしてみたがパブリック変数500個は問題なく動いた。 もっと使ってる人いる? http://mevius.5ch.net/test/read.cgi/tech/1432173164/297
298: デフォルトの名無しさん [sage] 2017/04/21(金) 19:40:41.67 ID:TpPjDerb いらない http://mevius.5ch.net/test/read.cgi/tech/1432173164/298
299: デフォルトの名無しさん [sage] 2017/04/21(金) 21:22:06.10 ID:BWuBR5xw 変数の一部を変数にする事は出来ないのでしょうか?(代入 とかではなく) たとえば↓はイメージですが変数名の箇所を文字列をつなぎ合わせる時と 同じように変数をわりあてられないのでしょうか?(以下は動きませんがphpではこれができます。) dim aaa1 dim aaa dim no dim bbb aaa1=例文1 aaa=aaa no=1 aaa & no = bbb msgbox bbb ↓ 結果は「例文1」 と表示されますみたな、、 http://mevius.5ch.net/test/read.cgi/tech/1432173164/299
300: デフォルトの名無しさん [sage] 2017/04/21(金) 21:28:31.62 ID:BWuBR5xw >>299 最終的には aaa1=「例文1」 aaa2=「例文2」 aaa3=「例文3」 ・ ・ とし aaa & no のno番号だけ差し替えて制御するみないな感じで使います。 ただしnoの番号は連続した数字ではなく他の集計結果からランダムに発生するため ループ処理等では成り立たず変数のように扱う必要があります。 http://mevius.5ch.net/test/read.cgi/tech/1432173164/300
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 702 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.011s