探検
Excel VBA 質問スレ Part65
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 3bda-drwQ)
2020/03/17(火) 16:27:20.88ID:hh8LiIgR0ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part64
https://mevius.5ch.net/test/read.cgi/tech/1575297834/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2デフォルトの名無しさん (ワッチョイ 2eef-drwQ)
2020/03/17(火) 18:15:02.25ID:xIJjSw0m0 >>1乙
3デフォルトの名無しさん (ワッチョイ 4d7c-9blg)
2020/03/17(火) 19:24:51.48ID:+T54gcvp04デフォルトの名無しさん (ワッチョイ 2eef-drwQ)
2020/03/17(火) 21:26:48.27ID:xIJjSw0m0 行をコピーして挿入操作
マクロ記録したら、Selection.Copy Selection.iIsert Shift:=xlDown が出てきたけど普通に再生できたぞ
マクロ記録したら、Selection.Copy Selection.iIsert Shift:=xlDown が出てきたけど普通に再生できたぞ
5デフォルトの名無しさん (ワッチョイ 4901-hdmr)
2020/03/18(水) 04:12:39.20ID:oTsktMrB0 VBAからインターネットエクスプローラーを起動して、
指定したURLのサイトを表示して、
スクリーンショットを取って行く。
という作業を自動化したくて色んなサイトのコードをコピペして、
一応動くものは出来たのですが画質が悪いです。
下記はそのコードの一部分なんですが、どこをどういじれば
画質が良くなるのでしょうか。
Private Declare PtrSafe Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
・・・
keybd_event &HA4, 0&, &H1, 0&
keybd_event vbKeySnapshot, 0&, &H1, 0&
keybd_event vbKeySnapshot, 0&, &H1 Or &H2, 0&
keybd_event &HA4, 0&, &H1 Or &H2, 0&
指定したURLのサイトを表示して、
スクリーンショットを取って行く。
という作業を自動化したくて色んなサイトのコードをコピペして、
一応動くものは出来たのですが画質が悪いです。
下記はそのコードの一部分なんですが、どこをどういじれば
画質が良くなるのでしょうか。
Private Declare PtrSafe Sub keybd_event Lib "user32" ( _
ByVal bVk As Byte, _
ByVal bScan As Byte, _
ByVal dwFlags As Long, _
ByVal dwExtraInfo As Long)
・・・
keybd_event &HA4, 0&, &H1, 0&
keybd_event vbKeySnapshot, 0&, &H1, 0&
keybd_event vbKeySnapshot, 0&, &H1 Or &H2, 0&
keybd_event &HA4, 0&, &H1 Or &H2, 0&
65 (ワッチョイ 4901-hdmr)
2020/03/18(水) 05:01:35.56ID:oTsktMrB07デフォルトの名無しさん (ワントンキン MMd3-UDK1)
2020/03/18(水) 12:15:49.12ID:w6Ggs+SYM8デフォルトの名無しさん (スップ Sd73-bMu3)
2020/03/18(水) 12:50:26.65ID:FL4Tmu/bd >>5
キーボードマクロ最悪
キーボードマクロ最悪
9デフォルトの名無しさん (ワッチョイ 13ad-NT4g)
2020/03/18(水) 21:13:19.46ID:ILNBMFwG0 リボンを自動的に非表示にする設定だととクイックアクセスに登録したものも含めてコマンドがすべて隠れてしまうんだけど
特定のコマンドのみ表示させておく方法はないかな?
マクロとして登録させて画像にマクロを登録しようとしたけど動かない。
特定のコマンドのみ表示させておく方法はないかな?
マクロとして登録させて画像にマクロを登録しようとしたけど動かない。
10デフォルトの名無しさん (ワッチョイ 0bef-ED79)
2020/03/19(木) 06:45:24.60ID:3WIKr7Ue011デフォルトの名無しさん (ワッチョイ 13ad-0a0A)
2020/03/19(木) 23:50:18.77ID:7Zzxd2N0012デフォルトの名無しさん (ワッチョイ 41ce-ED79)
2020/03/20(金) 00:29:09.01ID:cQ88e7Ay0 >>11
自作フォームをカスタマイズメニューに見立てて自作のマクロなどを呼び出す
自作フォームをカスタマイズメニューに見立てて自作のマクロなどを呼び出す
13デフォルトの名無しさん (ワッチョイ 13ad-0a0A)
2020/03/20(金) 08:35:07.45ID:SwKaoqcN014デフォルトの名無しさん (ワッチョイ 1342-AP1B)
2020/03/20(金) 08:58:05.53ID:8tNMwiiZ0 既存の機能が必要ならリボンを非表示にしなきゃ良いんじゃね
15デフォルトの名無しさん (ワッチョイ 0bef-ED79)
2020/03/20(金) 11:45:56.36ID:gOi7n73D0 >>13
SendKeys "% 〜
SendKeys "% 〜
16デフォルトの名無しさん (ワッチョイ b99b-kkyQ)
2020/03/20(金) 12:04:13.08ID:kTqu2sOZ0 >>15
ショートカットキーを設定してってことかな?
ショートカットキーを設定してってことかな?
17デフォルトの名無しさん (アウアウエー Sae3-2hW1)
2020/03/20(金) 12:36:23.76ID:dFakeV1fa csvを読む場合で、見出し行とデータ行が文字と数値で形式が違う場合とかどう処理しますか?
18デフォルトの名無しさん (アークセー Sx85-GnsP)
2020/03/20(金) 12:41:37.47ID:FhkC8bvBx >>17
パワークエリで読み込んで任意のデータ型に変換する
パワークエリで読み込んで任意のデータ型に変換する
19デフォルトの名無しさん (ワッチョイ c991-bMu3)
2020/03/20(金) 13:27:20.08ID:jE5Tt0oL020デフォルトの名無しさん (ラクッペペ MMeb-6U2m)
2020/03/20(金) 19:47:02.79ID:1JHTKX/vM >>17
全部文字として読み込む。コードで数値として処理したいならcintやcdblでキャストすればいい。因みにワークシート関数にはNumberValueってのがある。
全部文字として読み込む。コードで数値として処理したいならcintやcdblでキャストすればいい。因みにワークシート関数にはNumberValueってのがある。
21デフォルトの名無しさん (ワッチョイ 81da-ED79)
2020/03/20(金) 19:50:02.57ID:wHnf8pbD0 あれなんとかならんかな。
NULLがあるとコケるから、
いちいちIIF(A IS NOT NULL, CINT(A))ってやらなきゃいけないの。
NULLがあるとコケるから、
いちいちIIF(A IS NOT NULL, CINT(A))ってやらなきゃいけないの。
22デフォルトの名無しさん (ワッチョイ 8b46-m7vt)
2020/03/22(日) 12:27:27.61ID:bv32jkb00 VBA で、セルの指定しても行の指定が無効になってて、必ず1行目に表示されてしまいます。
何が原因でしょうかね?
教えてください。
何が原因でしょうかね?
教えてください。
23デフォルトの名無しさん (スプッッ Sd33-dSJs)
2020/03/22(日) 12:28:32.17ID:hR7PxyLud >>22
お前の馬鹿頭
お前の馬鹿頭
24デフォルトの名無しさん (ワッチョイ 8b46-m7vt)
2020/03/22(日) 12:35:14.95ID:bv32jkb00 原因わかりました。すみませんでした。
25デフォルトの名無しさん (ワッチョイ 8b46-m7vt)
2020/03/22(日) 12:36:52.15ID:bv32jkb00 ここの住民の霊性は暴力団と同じですね
26デフォルトの名無しさん (ブーイモ MM4d-O7/r)
2020/03/22(日) 13:22:11.60ID:TNUWFKUeM ここだけじゃなく5chはどこも似たり寄ったりです
貴方が来るような場所じゃありません
貴方が来るような場所じゃありません
27デフォルトの名無しさん (ワッチョイ 118e-dSJs)
2020/03/22(日) 14:47:18.63ID:9uw1USbo028デフォルトの名無しさん (ワッチョイ c991-bMu3)
2020/03/22(日) 15:26:01.73ID:bTaHgmHe029デフォルトの名無しさん (ワッチョイ 2beb-W/ZL)
2020/03/24(火) 17:30:30.61ID:s99Qd4t60 よろしくお願いします。
数百行あるシートで、上から順に一行ずつ以下の操作を行いたいです。
(1) C列の文章の中に、「一言コメント:」という文字が入っていれば2へ。なければ終わり、次の行へ
(2) 「一言コメント:」とそれ以下の文字列をC列の値から削除し、E列の、元々の値(文字列)の前に貼りつけ
(3) E列の文字列の中から「「一言コメント:」という文字列を削除
以上です。
まず、(1)の検索がうまくいかず、(2)の文字列取得も、一文字ずつ数えてカウントし、あらためて「終わりから○文字」みたいな
やりかたをするしか方法が浮かびません。
たぶん、上級者ならもっとシンプルな書き方ができるのではないかと思い質問させていただきました。
どのように書けばよいでしょうか?よろしくお願いいたします。
数百行あるシートで、上から順に一行ずつ以下の操作を行いたいです。
(1) C列の文章の中に、「一言コメント:」という文字が入っていれば2へ。なければ終わり、次の行へ
(2) 「一言コメント:」とそれ以下の文字列をC列の値から削除し、E列の、元々の値(文字列)の前に貼りつけ
(3) E列の文字列の中から「「一言コメント:」という文字列を削除
以上です。
まず、(1)の検索がうまくいかず、(2)の文字列取得も、一文字ずつ数えてカウントし、あらためて「終わりから○文字」みたいな
やりかたをするしか方法が浮かびません。
たぶん、上級者ならもっとシンプルな書き方ができるのではないかと思い質問させていただきました。
どのように書けばよいでしょうか?よろしくお願いいたします。
30デフォルトの名無しさん (ブーイモ MMcb-4fHN)
2020/03/24(火) 17:42:47.48ID:2RYGBfo0M For文をRowCntって変数で回していると仮定して
If Cells(RowCnt, 3).Value Like “*一言コメント:*″ Then
で引っかけるとか?
If Cells(RowCnt, 3).Value Like “*一言コメント:*″ Then
で引っかけるとか?
31デフォルトの名無しさん (ワッチョイ 2b2d-W/ZL)
2020/03/24(火) 17:58:43.96ID:BIkwDKwH0 VBAなくても関数だけで目的達成しそう
32デフォルトの名無しさん (ワッチョイ 8b2c-cvBQ)
2020/03/24(火) 18:33:24.09ID:n56XI6Ab0 >>29
Ruby で作った
text = <<"EOT"
ab一言コメント:12
あいう コメント:
xyz一言コメント:456
EOT
search_word = "一言コメント:"
sw_length = search_word.length # 7文字
text.each_line do | line | # 1行ずつ処理する
line.strip! # trim
# 単語が見つかった時だけ、単語の前後を出力する
if pos_1 = line.index( search_word )
puts "#{ line[ 0 ... pos_1 ] } - #{ line[ pos_1 + sw_length .. -1 ] }"
end
end
出力
ab - 12
xyz - 456
Ruby で作った
text = <<"EOT"
ab一言コメント:12
あいう コメント:
xyz一言コメント:456
EOT
search_word = "一言コメント:"
sw_length = search_word.length # 7文字
text.each_line do | line | # 1行ずつ処理する
line.strip! # trim
# 単語が見つかった時だけ、単語の前後を出力する
if pos_1 = line.index( search_word )
puts "#{ line[ 0 ... pos_1 ] } - #{ line[ pos_1 + sw_length .. -1 ] }"
end
end
出力
ab - 12
xyz - 456
33デフォルトの名無しさん (オッペケ Sr85-kkyQ)
2020/03/24(火) 18:34:45.78ID:qnUBImldr >>15
どんな機能でもショートカットキー設定できるの?
どんな機能でもショートカットキー設定できるの?
34デフォルトの名無しさん (ワッチョイ d17c-0ZVt)
2020/03/24(火) 19:30:25.33ID:sgSRB3ii0 >>29
VBAでないとだめなわけじゃないならExcel関数でやればいいと思う
VBAでないとだめなわけじゃないならExcel関数でやればいいと思う
35デフォルトの名無しさん (ワッチョイ d1e6-tCoU)
2020/03/24(火) 19:56:22.25ID:Yvy0BDEM0 >>33
Alt押してみ
Alt押してみ
36デフォルトの名無しさん (ワッチョイ 41ce-ED79)
2020/03/24(火) 22:01:18.60ID:PstaeSXz0 >>29
Dim c As Range, e As Range
s$ = "一言コメント:"
For Each c In Range(Cells(1, 3), Cells(Rows.Count, 3).End(xlUp))
i% = InStr(c, s)
If i Then
Set e = c.Offset(0, 2)
e = Replace(Left(c, i - 1) & e, s, "")
End If
Next
Dim c As Range, e As Range
s$ = "一言コメント:"
For Each c In Range(Cells(1, 3), Cells(Rows.Count, 3).End(xlUp))
i% = InStr(c, s)
If i Then
Set e = c.Offset(0, 2)
e = Replace(Left(c, i - 1) & e, s, "")
End If
Next
37デフォルトの名無しさん (ワッチョイ 13b5-Edxj)
2020/03/24(火) 22:44:45.47ID:Sir7Hwfr0 ここは上級者向け?
ド素人が少しずついろんなサイトや動画見て覚えようとしてるレベルじゃダメかな
ド素人が少しずついろんなサイトや動画見て覚えようとしてるレベルじゃダメかな
38デフォルトの名無しさん (ワッチョイ 41ce-ED79)
2020/03/24(火) 23:20:41.40ID:PstaeSXz039デフォルトの名無しさん (ワッチョイ 695f-n/Wf)
2020/03/24(火) 23:41:15.31ID:VeKTJmtj0 いろんなサイト見た方が早い
40デフォルトの名無しさん (ワッチョイ b1f1-Go5d)
2020/03/25(水) 09:15:56.68ID:nn3rUaIL0 FileSystemObjectでFilesのコレクションょ取得したあと
それぞれにアクセスするにはどうしますか?
Files(1), Files(2)のようにするとエラーが出てエラいこっちゃとなります。
For each文ならできるのですがそこまでするほどのことではない時には?
それぞれにアクセスするにはどうしますか?
Files(1), Files(2)のようにするとエラーが出てエラいこっちゃとなります。
For each文ならできるのですがそこまでするほどのことではない時には?
41デフォルトの名無しさん (ワッチョイ ad49-iBrl)
2020/03/25(水) 10:04:11.68ID:34Te7/8G0 コレクションょ
42デフォルトの名無しさん (ワッチョイ b1f1-z4rF)
2020/03/25(水) 10:44:44.89ID:nn3rUaIL0 を
43デフォルトの名無しさん (ワッチョイ ad49-iBrl)
2020/03/25(水) 10:51:51.28ID:34Te7/8G0 暇だし、見てみた
Const path = "c:\temp"
Dim fso As Scripting.FileSystemObject
Dim item As Object
Set fso = New Scripting.FileSystemObject
Set item = fso.GetFolder(path).Files.item("test.csv")
filesコレクションからの特定fileオブジェクトはitemプロパティでkeyをnameで指定すれば直接取れる
ExcelVBE上はitemでナンバリングされてるけど、配列みたいに番号指定は出来ないんじゃないかな(他の人知ってればいいな)
ファイル名特定できるならgetfileでもええね
個人的にはdirとか分かりやすいがね
Const path = "c:\temp"
Dim fso As Scripting.FileSystemObject
Dim item As Object
Set fso = New Scripting.FileSystemObject
Set item = fso.GetFolder(path).Files.item("test.csv")
filesコレクションからの特定fileオブジェクトはitemプロパティでkeyをnameで指定すれば直接取れる
ExcelVBE上はitemでナンバリングされてるけど、配列みたいに番号指定は出来ないんじゃないかな(他の人知ってればいいな)
ファイル名特定できるならgetfileでもええね
個人的にはdirとか分かりやすいがね
44デフォルトの名無しさん (ワッチョイ b1f1-z4rF)
2020/03/25(水) 12:51:44.52ID:nn3rUaIL0 itemでナンバリングされていないんじゃないか?
だからitem(1)やitem(2)で取得できないのでは。
それゃファイル名を()の中に書けば取得はできるけど。
だからitem(1)やitem(2)で取得できないのでは。
それゃファイル名を()の中に書けば取得はできるけど。
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 「中国人の訪日熱は冷めた」 人気旅行先から日本外れる 14日で自粛呼びかけ1カ月 ★3 [蚤の市★]
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★8 [蚤の市★]
- 中国・ロシア両軍の爆撃機が東京方面へ向かう「異例のルート」を共同飛行…核も搭載可能、連携して威嚇か [ぐれ★]
- 「1800万円の売り上げゼロに…」中国インバウンドに特化の宿の今 ★3 [蚤の市★]
- たけし、ダウンタウン、明石家さんまを超えた! 全世代を超えて愛されるお笑い芸人ランキング! 1位決まる [牛丼★]
- 【26年度予算案】防衛費、過去最大の9兆円規模に、政府調整 [蚤の市★]
- 【高市悲報】大多数の日本人「宗教ってなんか気持ち悪いし、はまってる人とは距離を置きたい」👈これ何でなの? [762037879]
- バイクのエンジンがかからないの…
- ドラえもんのいなかったのび太。それが俺とこのスレ見てるお前だよ [769050516]
- 【悲報】30代独身女性「結婚や成功してる友達との差は開く一方、このまま1人で生きて淘汰される人生だと気づいて絶望してる…406万いいね [483447288]
- 女「香水何使ってる?」イケメン「dior」フツメン「サボン系」インキャ「使わん」チー牛「なにそれ」
- 男子中学生に質問ある?
