!extend:checked:vvvvv:1000:512
ExcelのVBAに関する質問スレです
コード書き込みや作成依頼もOK
※前スレ
Excel VBA 質問スレ Part63
https://mevius.5ch.net/test/read.cgi/tech/1568630099/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
Excel VBA 質問スレ Part64
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん (ワッチョイ 23d0-o7DB)
2019/12/02(月) 23:43:54.18ID:ngrqyTy2070デフォルトの名無しさん (アークセー Sxc1-8b9E)
2019/12/09(月) 20:26:18.92ID:e1eF5taTx >>67
Public Subによる制御フローじゃないとドキュメントプロパティを参照できないなんていう制約は存在しないと思う
Public Subによる制御フローじゃないとドキュメントプロパティを参照できないなんていう制約は存在しないと思う
71デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/09(月) 20:35:27.90ID:Z8IKnDOY0 >>70
ただのSubに変えたら、ダメだった。
ただのSubに変えたら、ダメだった。
72デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/09(月) 20:37:14.17ID:Z8IKnDOY073デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/09(月) 20:45:36.21ID:Z8IKnDOY074デフォルトの名無しさん (ワッチョイ 4be8-V35x)
2019/12/09(月) 21:50:46.52ID:TvnOkFVF0 Range("R_TargetFullPath").Value
75デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/09(月) 22:19:06.53ID:JYKNIWO6076デフォルトの名無しさん (ワッチョイ 23ea-m7pn)
2019/12/09(月) 22:21:49.68ID:ZJISTsUc0 >>72
シートは一つ?別のシートにも同名範囲があって特定できないとか?
シートは一つ?別のシートにも同名範囲があって特定できないとか?
77デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/09(月) 22:23:12.83ID:JYKNIWO60 >>74
それだと1004エラーが出たらしい
それだと1004エラーが出たらしい
78デフォルトの名無しさん (アークセー Sxc1-8b9E)
2019/12/10(火) 00:08:00.24ID:IGUOZi3/x >>73
これはサブルーチン呼び出しの都合でPublicスコープにしているだけで、BuildinDocumentPropertiesの仕様とは関係ないのでは
これはサブルーチン呼び出しの都合でPublicスコープにしているだけで、BuildinDocumentPropertiesの仕様とは関係ないのでは
79デフォルトの名無しさん (アークセー Sxc1-8b9E)
2019/12/10(火) 00:18:53.99ID:IGUOZi3/x 名前付き範囲のスコープの問題もありそう
80デフォルトの名無しさん (ワッチョイ 4be8-V35x)
2019/12/10(火) 06:11:01.50ID:1SW8Wt4N081デフォルトの名無しさん (ワッチョイ 037d-V35x)
2019/12/10(火) 11:53:22.18ID:Snrdoe410 ページに設定しているフィルターの解除をする場合
Range("E5").Select
Selection.AutoFilter
といった具合にRangeとセットで使うしか無いのでしょうか?
ここでは、VBAで「E5」を指定していますが、中のデータが入力により空になる事もある為
Range指定する事なくフィルタを解除したいです。
Range("E5").Select
Selection.AutoFilter
といった具合にRangeとセットで使うしか無いのでしょうか?
ここでは、VBAで「E5」を指定していますが、中のデータが入力により空になる事もある為
Range指定する事なくフィルタを解除したいです。
82デフォルトの名無しさん (アークセー Sxc1-8b9E)
2019/12/10(火) 20:17:21.65ID:78OD2uofx83デフォルトの名無しさん (ワッチョイ 1b9f-V35x)
2019/12/10(火) 21:36:21.94ID:ntdCbZOy0 シート1のJ1〜J220のセルをシート2に行で張り付けて
それをどんどん繰り返して1〜48400の列を220*220の表にしたいんだけど、forに対するnextが無いと怒られます
3つのforに対してnextが足りてないのはわかるのですが、適当な場所においてもエラーが出ます
どうしたら解決するでしょうか?
Sub TEST4()
Dim S1 As Worksheet, S2 As Worksheet
Dim i As Integer, y As Integer, z As Integer
For i = 1 To 220
For y = 1 To 48181 Step +220
For z = 220 To 48400 Step +220
Set S1 = Worksheets("Sheet1")
Set S2 = Worksheets("Sheet2")
S2.Range("A" & i & ":" & "HL" & i).Value = S1.Range("J" & y & ":" & "J" & z).Value
Next
End Sub
それをどんどん繰り返して1〜48400の列を220*220の表にしたいんだけど、forに対するnextが無いと怒られます
3つのforに対してnextが足りてないのはわかるのですが、適当な場所においてもエラーが出ます
どうしたら解決するでしょうか?
Sub TEST4()
Dim S1 As Worksheet, S2 As Worksheet
Dim i As Integer, y As Integer, z As Integer
For i = 1 To 220
For y = 1 To 48181 Step +220
For z = 220 To 48400 Step +220
Set S1 = Worksheets("Sheet1")
Set S2 = Worksheets("Sheet2")
S2.Range("A" & i & ":" & "HL" & i).Value = S1.Range("J" & y & ":" & "J" & z).Value
Next
End Sub
84デフォルトの名無しさん (ワッチョイ 1dce-Fgt1)
2019/12/10(火) 21:54:10.27ID:bwWsAejd0 >>83
Sub TEST4()
Dim S1 As Worksheet, S2 As Worksheet
Dim r1 As Long, r2 As Long
Set S1 = Worksheets("Sheet1")
Set S2 = Worksheets("Sheet2")
r2 = 1
For r1 = 1 To 48400 Step 220
S2.Range("A" & r2 & ":HL" & r2) = WorksheetFunction.Transpose(S1.Range("J" & r1 & ":J" & r1 + 219))
r2 = r2 + 1
Next
End Sub
Sub TEST4()
Dim S1 As Worksheet, S2 As Worksheet
Dim r1 As Long, r2 As Long
Set S1 = Worksheets("Sheet1")
Set S2 = Worksheets("Sheet2")
r2 = 1
For r1 = 1 To 48400 Step 220
S2.Range("A" & r2 & ":HL" & r2) = WorksheetFunction.Transpose(S1.Range("J" & r1 & ":J" & r1 + 219))
r2 = r2 + 1
Next
End Sub
85デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/10(火) 21:58:10.86ID:blXuValB0 >>83
間違った場所に置くからエラーが出るんでしょうな
間違った場所に置くからエラーが出るんでしょうな
86デフォルトの名無しさん (ワッチョイ 1dce-Fgt1)
2019/12/10(火) 22:05:06.97ID:bwWsAejd0 Sub TEST4()
Dim S1 As Worksheet, S2 As Worksheet
Dim r1 As Long, r2 As Long
Set S1 = Worksheets("Sheet1")
Set S2 = Worksheets("Sheet2")
r2 = 1
For r1 = 1 To 48400 Step 220
S2.Range("A" & r2).Resize(, 220) = WorksheetFunction.Transpose(S1.Range("J" & r1).Resize(220))
r2 = r2 + 1
Next
End Sub
Dim S1 As Worksheet, S2 As Worksheet
Dim r1 As Long, r2 As Long
Set S1 = Worksheets("Sheet1")
Set S2 = Worksheets("Sheet2")
r2 = 1
For r1 = 1 To 48400 Step 220
S2.Range("A" & r2).Resize(, 220) = WorksheetFunction.Transpose(S1.Range("J" & r1).Resize(220))
r2 = r2 + 1
Next
End Sub
87デフォルトの名無しさん (ドコグロ MM49-FuzI)
2019/12/10(火) 22:33:04.15ID:e5kRWpUlM >>83
シート1には既に220*220の表があって、それをシート2に縦横入れ換えて貼り付けたいってこと?
シート1には既に220*220の表があって、それをシート2に縦横入れ換えて貼り付けたいってこと?
88デフォルトの名無しさん (ワッチョイ f579-uLMX)
2019/12/10(火) 22:41:16.48ID:+pH53X+X0 現在表示しているワークブックからファイル名の一部を取り出して、その数字をMsgBoxで表示するなど他の計算で使うことってできないでしょうか?
例えば「01-5.xlsx」の場合「-5」、「02+5.xlsx」の場合「5」、「03+1000.xlsx」の場合「1000」、「04-1234.xlsx」の場合「-1234」のような形
左の数字は2桁、右の数字は1〜4桁でファイルによって違います
0や小数点以下の数字はありません
ファイル名がプラスの場合とマイナスの場合があります
正数の場合ファイル名は+表記ですが記号自体は必要ありません
「マクロを実行しているワークブック」ではなく「現在表示しているワークブック」のファイル名を参照したいです
プログラミングの経験が全くなくて先週からマクロを触り始めたので不可能なことを質問かもしれませんがよろしくお願いします
例えば「01-5.xlsx」の場合「-5」、「02+5.xlsx」の場合「5」、「03+1000.xlsx」の場合「1000」、「04-1234.xlsx」の場合「-1234」のような形
左の数字は2桁、右の数字は1〜4桁でファイルによって違います
0や小数点以下の数字はありません
ファイル名がプラスの場合とマイナスの場合があります
正数の場合ファイル名は+表記ですが記号自体は必要ありません
「マクロを実行しているワークブック」ではなく「現在表示しているワークブック」のファイル名を参照したいです
プログラミングの経験が全くなくて先週からマクロを触り始めたので不可能なことを質問かもしれませんがよろしくお願いします
89デフォルトの名無しさん (ワッチョイ 1b9f-V35x)
2019/12/10(火) 22:46:23.21ID:ntdCbZOy090デフォルトの名無しさん (アークセー Sxc1-8b9E)
2019/12/10(火) 23:00:44.84ID:78OD2uofx >>88
+ または - を区切り文字としてThisworkbook.NameをSplit関数で分割して配列化する
得られた配列の二つ目の要素を取り出して整数型に型変換する
この二つのステップを実現すれば良い
+ または - を区切り文字としてThisworkbook.NameをSplit関数で分割して配列化する
得られた配列の二つ目の要素を取り出して整数型に型変換する
この二つのステップを実現すれば良い
91デフォルトの名無しさん (アークセー Sxc1-8b9E)
2019/12/10(火) 23:02:34.06ID:78OD2uofx92デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/10(火) 23:04:16.14ID:blXuValB0 >>90
-が消える上に.拡張子まで全部取得する羽目になる
-が消える上に.拡張子まで全部取得する羽目になる
93デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/10(火) 23:06:54.98ID:blXuValB0 ファイル名を.で区切った1個目の3文字目以降を取得して数値変換すればいい
94デフォルトの名無しさん (ワッチョイ 037d-V35x)
2019/12/11(水) 01:12:21.51ID:HRfJYRvp0 >>82
シートです!
シートです!
95デフォルトの名無しさん (ワッチョイ 9bf7-7Tsg)
2019/12/11(水) 05:06:25.08ID:rrddvJwO0 >>81
Worksheets("シート1").Autofiltermode = false
Worksheets("シート1").Autofiltermode = false
96デフォルトの名無しさん (ワッチョイ 9591-EgQB)
2019/12/11(水) 09:15:52.19ID:0sWj3Hq1097デフォルトの名無しさん (ワッチョイ 037d-V35x)
2019/12/11(水) 11:27:42.94ID:HRfJYRvp0 >>95
サンキュー!!
サンキュー!!
98デフォルトの名無しさん (ワッチョイ ddda-zAlO)
2019/12/11(水) 19:02:34.08ID:3wTkanlw0 それ多分フィルタ掛かってないとコケる。
On Error〜か、If AutoFilterMode Then入れないと。
On Error〜か、If AutoFilterMode Then入れないと。
99デフォルトの名無しさん (ワッチョイ 9591-EgQB)
2019/12/11(水) 23:16:02.27ID:0sWj3Hq10 >>98
Falseにする分には問題無い。
Falseにする分には問題無い。
100デフォルトの名無しさん (ワッチョイ c275-GBjH)
2019/12/12(木) 20:44:42.97ID:gjQRRqT20 >>88
Sub test2()
'整数を格納
Dim lngFileName As Long
'正規表現オブジェクトを作成
Dim objReg As Object, objRegMatch
Set objReg = CreateObject("VBScript.RegExp")
With objReg
'ファイル名のパターンを指定
'[半角数字2文字][区切り文字1文字][半角数字1〜4文字][拡張子(xlsxまたはxls)]に一致
.Pattern = "^\d{2}.(\d{1,4})\.(?:xlsx|xls)$"
.Global = True
End With
'正規表現にマッチしないファイル名だった場合の処理
Set objRegMatch = objReg.Execute(ActiveWorkbook.Name)
If objRegMatch.Count < 1 Then
'メッセージボックスを表示
MsgBox ("正規表現アンマッチ")
'Label1にジャンプして処理を終了
GoTo Label1
End If
'正規表現のグループ化した部分を整数として格納
lngFileName = objReg.Replace(ActiveWorkbook.Name, "$1")
'メッセージボックスを表示
MsgBox (lngFileName)
Label1:
End Sub
Sub test2()
'整数を格納
Dim lngFileName As Long
'正規表現オブジェクトを作成
Dim objReg As Object, objRegMatch
Set objReg = CreateObject("VBScript.RegExp")
With objReg
'ファイル名のパターンを指定
'[半角数字2文字][区切り文字1文字][半角数字1〜4文字][拡張子(xlsxまたはxls)]に一致
.Pattern = "^\d{2}.(\d{1,4})\.(?:xlsx|xls)$"
.Global = True
End With
'正規表現にマッチしないファイル名だった場合の処理
Set objRegMatch = objReg.Execute(ActiveWorkbook.Name)
If objRegMatch.Count < 1 Then
'メッセージボックスを表示
MsgBox ("正規表現アンマッチ")
'Label1にジャンプして処理を終了
GoTo Label1
End If
'正規表現のグループ化した部分を整数として格納
lngFileName = objReg.Replace(ActiveWorkbook.Name, "$1")
'メッセージボックスを表示
MsgBox (lngFileName)
Label1:
End Sub
101デフォルトの名無しさん (ワッチョイ 5f01-ECc1)
2019/12/12(木) 21:07:09.62ID:TAtdTKRF0 ここには北海道のグラサンスーパーハゲザーこないのー?
102デフォルトの名無しさん (ワッチョイ a3da-xO71)
2019/12/12(木) 22:26:00.96ID:NQXxI4iB0 ファイル名に + と - は使えないんじゃね
103デフォルトの名無しさん (ワッチョイ a3da-xO71)
2019/12/12(木) 22:29:22.61ID:NQXxI4iB0 あれ?使えるのか
104デフォルトの名無しさん (ワッチョイ c3ce-xO71)
2019/12/12(木) 23:03:36.86ID:pxF5Pr1U0 >>103
使えるけどコマンドプロンプトでトラブルが起きることがあるから推奨しないと主張する派閥もいる
使えるけどコマンドプロンプトでトラブルが起きることがあるから推奨しないと主張する派閥もいる
105デフォルトの名無しさん (ブーイモ MM3e-WP9S)
2019/12/13(金) 08:53:38.24ID:Kr+RdvKJM 特定のディレクトリに複数のエクセルがあってそのエクセルの特定のシートに値を設定するってマクロを作ったところなんですが特定のシートがない場合は処理を抜けるようにするのってどうすればいいんでしょうか
106デフォルトの名無しさん (ワッチョイ 0e9f-GBjH)
2019/12/13(金) 09:22:06.72ID:jxXQPWyn0 バイナリデータをエクセルに16列で読み込んで(ここまでは出来た)、
今度はそれの逆をしようとしているのですが最初で詰まっています
とりあえず1列だけでもと、やってみたものの全然うまくいきません
サンプルのOutputをBinaryに、Print をPut構文にすればできるような気がするのですが
出力ファイルにデータが反映されてなかったりといった状況です
Sub make()
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)
Dim datFile As Variant
datFile = ActiveWorkbook.Path & "\data.bin"
Open datFile For Output As #1
Dim i As Long
i = 1
Do While ws.Cells(i, 1).Value <> ""
Print #1, ws.Cells(i, 1).Value
i = i + 1
Loop
Close #1
End Sub
今度はそれの逆をしようとしているのですが最初で詰まっています
とりあえず1列だけでもと、やってみたものの全然うまくいきません
サンプルのOutputをBinaryに、Print をPut構文にすればできるような気がするのですが
出力ファイルにデータが反映されてなかったりといった状況です
Sub make()
Dim ws As Worksheet
Set ws = ThisWorkbook.Worksheets(1)
Dim datFile As Variant
datFile = ActiveWorkbook.Path & "\data.bin"
Open datFile For Output As #1
Dim i As Long
i = 1
Do While ws.Cells(i, 1).Value <> ""
Print #1, ws.Cells(i, 1).Value
i = i + 1
Loop
Close #1
End Sub
107デフォルトの名無しさん (アークセー Sxdf-kCbJ)
2019/12/13(金) 09:29:21.11ID:tON2FCC6x >>105
Dir関数かFileSystemObject. FileExistsで調べられる
Dir関数かFileSystemObject. FileExistsで調べられる
108デフォルトの名無しさん (アークセー Sxdf-kCbJ)
2019/12/13(金) 09:33:50.19ID:tON2FCC6x >>105
ファイル存在確認じゃなくてシート存在確認かごめん
ファイル存在確認じゃなくてシート存在確認かごめん
109デフォルトの名無しさん (ブーイモ MM3e-WP9S)
2019/12/13(金) 10:57:50.32ID:Kr+RdvKJM >>108
シートがない場合の件はForで回して無事解決できました
シートがない場合の件はForで回して無事解決できました
110デフォルトの名無しさん (ブーイモ MM3e-WP9S)
2019/12/13(金) 12:12:29.79ID:Kr+RdvKJM VBAで名前定義がされたセルに値を書き込む際名前定義の範囲がシート指定の場合操作できないのでしょうか
111デフォルトの名無しさん (ワッチョイ a3da-xO71)
2019/12/13(金) 14:57:25.33ID:tYi2uLeR0 >>106
出力するデータの型がバイナリになっていないとだめかも
出力するデータの型がバイナリになっていないとだめかも
112デフォルトの名無しさん (ワッチョイ e2ea-VILg)
2019/12/13(金) 18:47:12.50ID:PdnkT2240 >>110
そんなことないはず。
そんなことないはず。
113デフォルトの名無しさん (ワッチョイ 5f01-ECc1)
2019/12/13(金) 21:57:03.12ID:mlyVYmAb0 北海道のグラサンスーパーハゲザーはここにこないのー?
114デフォルトの名無しさん (ワッチョイ a3da-X5Um)
2019/12/14(土) 10:49:44.02ID:q6pf2Uya0 PDFからのデータ取得ってどうにかならんもんかな。
Adobeの有料版使ってエクセル変換してるが、フォーマットによってはレイアウト崩れが酷くて使い物にならん。
ハイライトリストも試してみたんだけど、文字がぶつ切りでしか取れなくて、速度も遅い。
座標見ながら文字結合するのもアレだし。
RPA的にコピペするのもマヌケだしなぁ。
Adobeの有料版使ってエクセル変換してるが、フォーマットによってはレイアウト崩れが酷くて使い物にならん。
ハイライトリストも試してみたんだけど、文字がぶつ切りでしか取れなくて、速度も遅い。
座標見ながら文字結合するのもアレだし。
RPA的にコピペするのもマヌケだしなぁ。
115デフォルトの名無しさん (アウアウウー Sa3b-oPxD)
2019/12/14(土) 11:40:24.17ID:0wkcBg3Ka そんな馬鹿なことをしなくてもいいように業務フローを見直す、が正解
116デフォルトの名無しさん (スップ Sd22-xO71)
2019/12/14(土) 11:59:38.55ID:qU+OtdBcd >>114
理論上はPostscriptを完璧にシミュレートすれば可能なはずなんだけど、かなり面倒だしそこまでやってるアプリは今のところ見た事ない
レイアウトが崩れない変換アプリがあるんなら教えて欲しいわ
理論上はPostscriptを完璧にシミュレートすれば可能なはずなんだけど、かなり面倒だしそこまでやってるアプリは今のところ見た事ない
レイアウトが崩れない変換アプリがあるんなら教えて欲しいわ
117デフォルトの名無しさん (ワッチョイ e279-40qP)
2019/12/14(土) 14:16:07.99ID:O6whyyHQ0 PDFのレンダリングは完璧なんだから
取得ができないのは本来おかしいんだけどね
取得ができないのは本来おかしいんだけどね
118デフォルトの名無しさん (ワッチョイ 4e90-xO71)
2019/12/15(日) 09:28:05.88ID:P17lNwFm0 環境は、OS:Windows10, Excel2016です。
初歩的な質問ですが、よろしくお願いします。
エクセル開発タブ⇒マクロの記録を選択
マクロの保存先を新しいブックにしてOKすると、
新しいブックが表示されてしまいます。(EXCEL2010までは表示はされなかった気がします。)
表示させないようにしたいですが方法はありますでしょうか?
初歩的な質問ですが、よろしくお願いします。
エクセル開発タブ⇒マクロの記録を選択
マクロの保存先を新しいブックにしてOKすると、
新しいブックが表示されてしまいます。(EXCEL2010までは表示はされなかった気がします。)
表示させないようにしたいですが方法はありますでしょうか?
119デフォルトの名無しさん (ワッチョイ 3b7c-6dnz)
2019/12/15(日) 12:10:44.95ID:JDQV93QX0 Excelの使い方の質問ですな
120デフォルトの名無しさん (アークセー Sxdf-kCbJ)
2019/12/15(日) 13:30:33.36ID:STgulX1kx121デフォルトの名無しさん (ワッチョイ eff1-ctch)
2019/12/15(日) 14:37:37.17ID:Jtes46Zd0 VBAのコードを長時間書いていたら肛門が痛くなりました。
これは何かの病気?いい薬はありますか?
これは何かの病気?いい薬はありますか?
122デフォルトの名無しさん (ブーイモ MMdb-Cxlv)
2019/12/15(日) 15:56:49.13ID:ZgYfMqOYM Worksheets(1), Worksheets(2), Worksheets(3), ...
が常にワークシートの並び順になっている事を前提にコーディングしても大丈夫ですか?
が常にワークシートの並び順になっている事を前提にコーディングしても大丈夫ですか?
123デフォルトの名無しさん (ワッチョイ 4e68-xO71)
2019/12/15(日) 16:04:03.19ID:jQWuvGce0 止めは先が100%大惨事になるだろうな
124デフォルトの名無しさん (アークセー Sxdf-kCbJ)
2019/12/15(日) 16:08:21.42ID:STgulX1kx >>122
OK
シートの並び順とシートのIndexは連動しているから
ただ他人と共有するブックでシートIndexに依存したコードを書くならば、シートの追加や削除や並び替えをユーザー側で行えなくするために、ブック構成の保護をかける必要はあるかも
OK
シートの並び順とシートのIndexは連動しているから
ただ他人と共有するブックでシートIndexに依存したコードを書くならば、シートの追加や削除や並び替えをユーザー側で行えなくするために、ブック構成の保護をかける必要はあるかも
125デフォルトの名無しさん (ササクッテロ Spdf-o8z9)
2019/12/15(日) 20:43:05.99ID:FsE4lMSlp >>122
非表示がなければ
非表示がなければ
126デフォルトの名無しさん (ワッチョイ e279-40qP)
2019/12/15(日) 21:19:26.62ID:SHKnrJYm0 インデックス値とシートの順にそんな保証あったかな
使い古しのワークブックだと最初のシートがSheet1とは限らない気がするし
使い古しのワークブックだと最初のシートがSheet1とは限らない気がするし
127デフォルトの名無しさん (ワッチョイ 4e68-xO71)
2019/12/15(日) 21:53:45.41ID:jQWuvGce0 sheet1じゃなくてsheet(1)だぞ
左端がsheet(1)
左端がsheet(1)
128デフォルトの名無しさん (アークセー Sxdf-kCbJ)
2019/12/15(日) 22:30:02.10ID:STgulX1kx >>126
CodeNameの話じゃなくてシートインデックスの話だぞ
CodeNameの話じゃなくてシートインデックスの話だぞ
129デフォルトの名無しさん (ワッチョイ a702-G5xG)
2019/12/15(日) 23:11:58.85ID:HW9FgRDW0 VBAで拡張子がDWGのCAD図面ファイルから文字列と数字を抜き出してエクセルに貼り付けたいんだけどなんかイイ方法ない?
130デフォルトの名無しさん (ワッチョイ 5f01-uKDx)
2019/12/15(日) 23:42:09.44ID:LATD77rz0 AutocadのVBA使えば。
131デフォルトの名無しさん (アウアウウー Sa3b-G5xG)
2019/12/15(日) 23:44:25.04ID:4M9N/f7Ka >>130
AutoCADのソフトは持ってないんだけど出来るの?
AutoCADのソフトは持ってないんだけど出来るの?
132デフォルトの名無しさん (ワッチョイ a3da-xO71)
2019/12/16(月) 02:59:51.17ID:81b5k4YR0 DXFファイルはないのか?
133デフォルトの名無しさん (ワッチョイ efaa-G5xG)
2019/12/16(月) 08:14:35.94ID:ylV0M4Pv0 >>132
ないんだ
ないんだ
134デフォルトの名無しさん (ワッチョイ c3ce-xO71)
2019/12/16(月) 08:19:35.03ID:MkhWpp+30135デフォルトの名無しさん (ワッチョイ efaa-G5xG)
2019/12/16(月) 09:20:06.30ID:ylV0M4Pv0 >>134
会社だからあんまりフリーソフト入れたくないんだよなぁ
会社だからあんまりフリーソフト入れたくないんだよなぁ
136デフォルトの名無しさん (ワッチョイ 9f91-jCac)
2019/12/16(月) 12:08:57.72ID:t2/k2gwa0 どこまで読み取りたいのか分からんが、タイトルとかコメントとか作者とかは読み取れるんじゃない?
AutoCAD入ってなくても動くか分からんけどCOM用のAPI使って読み取るサンプルならAutodeskのフォーラムに有ったぞ。
AutoCAD入ってなくても動くか分からんけどCOM用のAPI使って読み取るサンプルならAutodeskのフォーラムに有ったぞ。
137デフォルトの名無しさん (ワッチョイ a3da-xO71)
2019/12/16(月) 18:36:30.35ID:81b5k4YR0 >>135
業務上必要だと上司に相談して無理ならできませんでいいやん
業務上必要だと上司に相談して無理ならできませんでいいやん
138デフォルトの名無しさん (ワッチョイ e279-40qP)
2019/12/16(月) 19:13:38.22ID:zd6rche20 DWGファイルを扱うってことはどっかの部署ではAutoCADが動いてるわけだから環境借りるなりすればいい
139デフォルトの名無しさん (ワッチョイ 6222-GBjH)
2019/12/16(月) 19:29:44.71ID:A0F2PFYR0 何がやりたいのか(最終目的が何なのか)分からないが、
AutoCADのスレで質問した方がいいと思う
AutoCAD総合スレ part7
https://mevius.5ch.net/test/read.cgi/bsoft/1556080032/
AutoCADのスレで質問した方がいいと思う
AutoCAD総合スレ part7
https://mevius.5ch.net/test/read.cgi/bsoft/1556080032/
140デフォルトの名無しさん (アウアウウー Sa3b-pTYq)
2019/12/16(月) 20:17:26.44ID:+vV5KnGFa そんなデータの編集業務ってブラック企業じゃね
141デフォルトの名無しさん (ワッチョイ efaa-G5xG)
2019/12/16(月) 20:25:39.43ID:ylV0M4Pv0 図面から読み取る仕事が多くてVBAで自動化できないかと考えてるだけだよ。ブラック企業でもないよ。
バイナリファイルじゃ読み取れないし、フリーソフトで一つ一つテキストファイルDXFに変換っていうのもなかなかナンセンスな気がする
バイナリファイルじゃ読み取れないし、フリーソフトで一つ一つテキストファイルDXFに変換っていうのもなかなかナンセンスな気がする
142デフォルトの名無しさん (スッップ Sd02-RPlZ)
2019/12/16(月) 21:37:32.27ID:CfM/IfFed >>141
お前が馬鹿なだけだろ
お前が馬鹿なだけだろ
143デフォルトの名無しさん (ワッチョイ 4e33-zjWo)
2019/12/16(月) 21:44:36.78ID:UUZzkS6j0 よかったな天才に教えて貰えるぞ
144デフォルトの名無しさん (ワッチョイ a702-G5xG)
2019/12/16(月) 21:59:33.00ID:UZ2w46Iu0145デフォルトの名無しさん (アウアウウー Sa3b-pTYq)
2019/12/16(月) 23:05:55.21ID:ArNGhSEVa その図面データに営利目的で使用してはいけないって書いてないか?
146デフォルトの名無しさん (アウアウウー Sa3b-G5xG)
2019/12/16(月) 23:19:30.71ID:zUbFdDFya 社内の人が作ってる図面なんだが
147デフォルトの名無しさん (ワッチョイ a3da-pTYq)
2019/12/17(火) 01:41:33.76ID:fNjlS94d0 だったら保存形式かえてもらえばすむやん
148デフォルトの名無しさん (ワッチョイ e72f-3siJ)
2019/12/17(火) 02:29:00.49ID:7tj6sNHj0 CADファイルならVISIOで開けるじゃね
VISIOにVBA載ってなかったか
VISIOにVBA載ってなかったか
149デフォルトの名無しさん (ワッチョイ a201-VrMI)
2019/12/17(火) 02:51:35.82ID:Ef4LKPDY0 DWGもCOM経由でExcelから扱える
150デフォルトの名無しさん (アウアウウー Sa3b-B/vL)
2019/12/17(火) 08:50:39.06ID:7E3y3B+ga Excelで作成したものをフリーOfficeのCalcで開こうとするとエラーが出るので、違うPCのExcelにコードを写したいのですが、どうすれば良いでしょうか?
sheetは5枚でそれぞれデータが入力されています。
そのシートをコピーしてマクロコードをコピペすればできるのでしょうか?
コピーはできても貼り付ける場所が分かりません。教えてください。
sheetは5枚でそれぞれデータが入力されています。
そのシートをコピーしてマクロコードをコピペすればできるのでしょうか?
コピーはできても貼り付ける場所が分かりません。教えてください。
151デフォルトの名無しさん (ワッチョイ 6242-Zk2E)
2019/12/17(火) 09:41:37.65ID:vQ+5LFSo0 マクロは互換性ほぼ無いからなあ
152デフォルトの名無しさん (ワッチョイ 9f91-jCac)
2019/12/17(火) 15:37:53.37ID:/A3hSSic0 >>150
よく分からん。
ファイルをコピーしてそのファイルをそのまま使えば良いんじゃね?
要はさ、そのマクロのコ―ドがExcelの何を使っているかで変わるだろ。
コードを追って必要なものをコピーすれば使えるだろうよ。
よく分からん。
ファイルをコピーしてそのファイルをそのまま使えば良いんじゃね?
要はさ、そのマクロのコ―ドがExcelの何を使っているかで変わるだろ。
コードを追って必要なものをコピーすれば使えるだろうよ。
153デフォルトの名無しさん (アウアウウー Sa3b-pTYq)
2019/12/17(火) 20:23:29.92ID:3Fa5Zu3xa 慣れてる人ならできるかもしれんが
初心者じゃ無理だろ、互換性ないし
初心者じゃ無理だろ、互換性ないし
154デフォルトの名無しさん (ワッチョイ 4e68-xO71)
2019/12/17(火) 20:37:54.29ID:WWM9H/Hw0 OOoのVBAは相当単純なものじゃないと動かなかったような
色々省略するのもダメだったような気がする
色々省略するのもダメだったような気がする
155デフォルトの名無しさん (ワッチョイ c275-GBjH)
2019/12/17(火) 20:55:11.10ID:BpmC86c/0 OOOBasicなんてあるんだな
勉強する人いるの?
勉強する人いるの?
156デフォルトの名無しさん (ワッチョイ 4e68-xO71)
2019/12/17(火) 21:06:28.96ID:WWM9H/Hw0 OOOBasicというのか・・・
数年前きまぐれにちょっと触って、あまりの互換性のなさに逃げ出したわ
数年前きまぐれにちょっと触って、あまりの互換性のなさに逃げ出したわ
157デフォルトの名無しさん (ワッチョイ 1b8e-RPlZ)
2019/12/17(火) 23:47:48.67ID:eRzCNyCK0 >>150
馬鹿は死ね
馬鹿は死ね
158デフォルトの名無しさん (ワッチョイ 5f01-uKDx)
2019/12/18(水) 02:07:35.42ID:ksLRDXXy0 なんでBasicにしたんだろね。
後発なんだから選べたはずなのに。
後発なんだから選べたはずなのに。
159デフォルトの名無しさん (ワッチョイ a3da-xO71)
2019/12/18(水) 02:16:13.86ID:mwLPhsOw0 Cに似せるほうが大変だろう
160デフォルトの名無しさん (ワッチョイ 4e68-xO71)
2019/12/18(水) 07:45:18.46ID:enbCu13E0161デフォルトの名無しさん (ワッチョイ c275-GBjH)
2019/12/18(水) 07:46:31.18ID:5n7ujQMK0 oooの話だろ
162デフォルトの名無しさん (アウアウウー Sa3b-B/vL)
2019/12/18(水) 08:15:59.63ID:Bw/0QRZma >>152
PC1のデータをPC2に移したい。でも、PC2にUSBなど外部のものを差し込めないしネットには繋がるけど仮想?か分からないけどデータをPC2のデスクトップとかドキュメントに保存できないので、
データの中身をコピーしてPC2でExcelを開きペーストすれば良いのではと考えたのですが、
Excelのデータを丸々コピーするにはまずシートをコピペしてその後マクロコードをコピペすれば良いのでしょうか?どこに貼り付ければ良いのかわかりません。
PC1のデータをPC2に移したい。でも、PC2にUSBなど外部のものを差し込めないしネットには繋がるけど仮想?か分からないけどデータをPC2のデスクトップとかドキュメントに保存できないので、
データの中身をコピーしてPC2でExcelを開きペーストすれば良いのではと考えたのですが、
Excelのデータを丸々コピーするにはまずシートをコピペしてその後マクロコードをコピペすれば良いのでしょうか?どこに貼り付ければ良いのかわかりません。
163デフォルトの名無しさん (ワッチョイ 0e2b-6dnz)
2019/12/18(水) 14:12:35.99ID:HS0oeyOA0 PC2のどこに移したいの?
PC2でデータを開き データの中身をコピーして Excel(新規ブック)を開きペーストすれば良い
でもその新規ブックは保存できないんでしょ?
PC2でデータを開き データの中身をコピーして Excel(新規ブック)を開きペーストすれば良い
でもその新規ブックは保存できないんでしょ?
164デフォルトの名無しさん (ワッチョイ a3da-pTYq)
2019/12/18(水) 14:53:42.73ID:mwLPhsOw0 会社のPCなら上司にまず先に相談しろ
165デフォルトの名無しさん (アウアウウー Sa3b-B/vL)
2019/12/18(水) 15:30:08.92ID:Bw/0QRZma >>163
PC2のデスクトップ
Excelを新規で開けば保存できる。
もしくは開きたいExcelのデータCalcでなら開ける。
Calcで開いてコピーしたものをExcelに貼り付けたら出来るのか?セル全範囲コピーして貼り付けてマクロコードもコピーして。
PC2のデスクトップ
Excelを新規で開けば保存できる。
もしくは開きたいExcelのデータCalcでなら開ける。
Calcで開いてコピーしたものをExcelに貼り付けたら出来るのか?セル全範囲コピーして貼り付けてマクロコードもコピーして。
166デフォルトの名無しさん (ワッチョイ 1b8e-RPlZ)
2019/12/18(水) 16:28:12.29ID:cW21FM1r0 >>162
馬鹿は死ね
馬鹿は死ね
167デフォルトの名無しさん (アウアウウー Sa3b-pTYq)
2019/12/18(水) 18:12:16.35ID:2hbVJNuaa シートの書式がコピーできるかな?
168デフォルトの名無しさん (アウアウウー Sa3b-pTYq)
2019/12/18(水) 18:12:36.66ID:2hbVJNuaa セルね
169デフォルトの名無しさん (ワッチョイ e793-goRK)
2019/12/18(水) 18:28:12.80ID:jQts0Cg90 >>167
死ね
死ね
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 高市首相の答弁書に「台湾有事答えない」と明記 存立危機発言当時 ★2 [蚤の市★]
- 【ド軍】山本由伸、WBC出場を決断!ドジャースが本人の意向を尊重、佐々木朗希はチームが故障歴を懸念で不参加 [鉄チーズ烏★]
- 米大統領報道官「日本と強固な同盟維持、中国とも協力」 [少考さん★]
- JA全農が「新おこめ券」…来年9月末の有効期限を新設、必要経費のみ上乗せ ★2 [蚤の市★]
- ミス・ユニバース フィンランド代表の「つり目」写真が波紋… 本人釈明も批判やまず 協会謝罪「徹底的に検証」へ [冬月記者★]
- 【テレビ】粗品「THE W」バッサリ「おもんない、レベル低い」審査員就任で「日テレが“血の海”に…」 [湛然★]
- キ...キャ...キャ...キャン...
- (´・ω・`)おはよ
- 【悲報】女さん「ハローワークで仕事を探してる3-40代の中年男性いるでしょ。あれ何?」 [483447288]
- お前ら、豪雪地帯に一回住んでみろよ。 朝から晩まで雪に振り回される生活で死にたくなるから☃ [891140289]
- ( ・᷄ὢ・᷅ )博士メロつき界隈
- シコシコシコ………ドピュッ!⇦これなに?
