教えて下さい。
役所のWeb公開している、DL済みxlsxファイルの「前回更新日時」を取得して
自book特定セルに落とそうと、Webを漁って以下のVBAを書いてみた。
※ なんでわざわざプロパティの「前回更新日時」を取得するのかというと
ただの「更新日時」では、自分がDLした日時になってしまうから。
Public Sub LastSaveTime()
With CreateObject("Excel.Application")
.Visible = False
With .Workbooks.Open(Cells(8, 1).Value)
Cells(8, 2).Value = .BuiltinDocumentProperties("Last save time").Value
End With
.Quit
End With
End Sub
これ自体は上手くいくんだけど、
目的のファイルのフルパスが入力済みの、
Cell(8,1).Value の(8, 1)=A8セルを
定義された名前に置き換えたい。
Worksheet上で普通に
$A$8 = R_TargetFullPath
と名前を定義して
VBA上で
With .Workbooks.Open(R_TargetFullPath)
としたら
実行時エラー '1004':
申し訳ございません。が見つかりません。
名前が変更されたか、移動や削除が行われた可能性があります。
と中途半端なエラーが出てしまうのは、なんでだろ?
Public Subだから?
探検
Excel VBA 質問スレ Part64
レス数が1000を超えています。これ以上書き込みはできません。
50デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 21:02:19.63ID:m4NCsCKi051デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 21:04:30.92ID:m4NCsCKi052デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/08(日) 21:11:35.36ID:uIaXKQtl0 >>50
Range(名前).Value
Range(名前).Value
53デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 21:38:38.38ID:m4NCsCKi054デフォルトの名無しさん (ワッチョイ 7501-cb5P)
2019/12/08(日) 22:06:19.10ID:ick2zDgR0 yokokara
55デフォルトの名無しさん (アークセー Sxc1-8b9E)
2019/12/08(日) 22:10:45.88ID:qsJQUXNgx56デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/08(日) 22:49:12.52ID:uIaXKQtl0 >>53
Rangeにブックやシートの指定してる?
Rangeにブックやシートの指定してる?
57デフォルトの名無しさん (ワッチョイ ddda-zAlO)
2019/12/08(日) 23:01:44.63ID:gCiRV9kE0 MsgBox R_TargetFullPath
で何が表示されるか見てみたら?
で何が表示されるか見てみたら?
58デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 23:04:27.84ID:m4NCsCKi0 >>55
ありがとう。
フォルダパスも名前を定義しているんだけど、
まずはその定義名を使わず、以下でやってみた。
With .Workbooks.Open(R_TargetFullPath)
↓
With .Workbooks.Open(Range("E:\Excel研究\前回保存日時の取得\○○の場合\'Last save timeを得るVBA.xlsm'!R_TargetFilePath").Value)
コンパイルは通った。
で、立ち上げているのは自bookだけなのを確認して
マクロを実行した結果、
実行時エラー '1004':
'Range' メソッドは失敗しました: '_Global' オブジェクト
むぅ・・・
ありがとう。
フォルダパスも名前を定義しているんだけど、
まずはその定義名を使わず、以下でやってみた。
With .Workbooks.Open(R_TargetFullPath)
↓
With .Workbooks.Open(Range("E:\Excel研究\前回保存日時の取得\○○の場合\'Last save timeを得るVBA.xlsm'!R_TargetFilePath").Value)
コンパイルは通った。
で、立ち上げているのは自bookだけなのを確認して
マクロを実行した結果、
実行時エラー '1004':
'Range' メソッドは失敗しました: '_Global' オブジェクト
むぅ・・・
59デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 23:18:37.85ID:m4NCsCKi060デフォルトの名無しさん (ワッチョイ 0d8e-pptj)
2019/12/08(日) 23:23:11.19ID:zBnJIcph0 >>59
死ね
死ね
61デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 23:31:46.83ID:m4NCsCKi0 >>57
ありがとう。
目的のファイル指定は取りあえず置いといて
画面抑止のままのこの主旨でいいのかな?
Public Sub LastSaveTime2()
With CreateObject("Excel.Application")
.Visible = False
MsgBox R_TargetFullPath
End With
End Sub
で、MSGの結果は、中身がブランク。
ありがとう。
目的のファイル指定は取りあえず置いといて
画面抑止のままのこの主旨でいいのかな?
Public Sub LastSaveTime2()
With CreateObject("Excel.Application")
.Visible = False
MsgBox R_TargetFullPath
End With
End Sub
で、MSGの結果は、中身がブランク。
62デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 23:32:04.18ID:m4NCsCKi0 >>60
どうぞお幸せに。
どうぞお幸せに。
63デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/08(日) 23:35:44.03ID:uIaXKQtl0 >>59
普通にシート指定すればよい
はっきり理解できてないのにブックもシートも指定せずセルを扱うなんて危険なことはやめた方がいい
ところでR_TargetFullPathはセル名と言ってなかったかな?
>Workbooks.Open(R_TargetFullPath)
これが通るってR_TargetFullPathの中にフルパスが入ってるとしか思えない
普通にシート指定すればよい
はっきり理解できてないのにブックもシートも指定せずセルを扱うなんて危険なことはやめた方がいい
ところでR_TargetFullPathはセル名と言ってなかったかな?
>Workbooks.Open(R_TargetFullPath)
これが通るってR_TargetFullPathの中にフルパスが入ってるとしか思えない
64デフォルトの名無しさん (ワッチョイ 4bda-Fgt1)
2019/12/08(日) 23:50:05.28ID:m4NCsCKi065デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/09(月) 00:26:53.00ID:JYKNIWO60 >>64
シート指定とか調べず勘でやってるのか?
基本が無いのに勘で文法は書けないよ、知らないならちゃんと調べた方がいい
名前を定義とは、$A$8セルに「R_TargetFullPath」という名前を付けたと言ってる?
ちなみにVBAでR_TargetFullPathという名前の変数か定数作ったりしてない?
シート指定とか調べず勘でやってるのか?
基本が無いのに勘で文法は書けないよ、知らないならちゃんと調べた方がいい
名前を定義とは、$A$8セルに「R_TargetFullPath」という名前を付けたと言ってる?
ちなみにVBAでR_TargetFullPathという名前の変数か定数作ったりしてない?
66デフォルトの名無しさん (ワッチョイ 2359-VnuC)
2019/12/09(月) 00:28:16.96ID:s6MuVJyT0 R_TargetFullPathに何を入れたいのかもう一度よく考えてコードを見直せ
6750 (ワッチョイ 4bda-Fgt1)
2019/12/09(月) 18:07:53.39ID:Z8IKnDOY0 いろいろ考えてくれた皆さん、どうもありがとう。
自分の考えを上手く伝えられず、申し訳ない。
自分なりの考えで、確証は得られていないけど、
・"BuiltinDocumentProperties" を使った「前回更新日時」の取得は、対象ファイルをいちいち開かないと取得出来ないため、Public Subでやるしかない。
・が、Range(定義名)では、例えアクティブな自sheet内の定義名でもなぜか上手く取得出来ない。
・ただし、アクティブなセルをCells(行数, 列数)なら値取得が出来る。
ということかと。
ならば、「1つのファイルの日時を取得するのに定義名を使う」考え方を変えて、
・Cells(行数, 列数)を活かして、フォルダにDLした .xl* ファイルの、全ての前回更新日時を取得する。
としたら、出来た。
3つめの "Public Sub LastSaveTime3()" をボタンにマクロ登録
https://i.imgur.com/19QWsrZ.png
Power Queryで取得したフォルダ内.xl*ファイル一覧表(タイトルが黄緑色の列)の右列に
上記VBAで「前回更新日時」を取得した結果(タイトルが深緑色の列)
https://i.imgur.com/jegG0b5.png
自分の考えを上手く伝えられず、申し訳ない。
自分なりの考えで、確証は得られていないけど、
・"BuiltinDocumentProperties" を使った「前回更新日時」の取得は、対象ファイルをいちいち開かないと取得出来ないため、Public Subでやるしかない。
・が、Range(定義名)では、例えアクティブな自sheet内の定義名でもなぜか上手く取得出来ない。
・ただし、アクティブなセルをCells(行数, 列数)なら値取得が出来る。
ということかと。
ならば、「1つのファイルの日時を取得するのに定義名を使う」考え方を変えて、
・Cells(行数, 列数)を活かして、フォルダにDLした .xl* ファイルの、全ての前回更新日時を取得する。
としたら、出来た。
3つめの "Public Sub LastSaveTime3()" をボタンにマクロ登録
https://i.imgur.com/19QWsrZ.png
Power Queryで取得したフォルダ内.xl*ファイル一覧表(タイトルが黄緑色の列)の右列に
上記VBAで「前回更新日時」を取得した結果(タイトルが深緑色の列)
https://i.imgur.com/jegG0b5.png
68デフォルトの名無しさん (ワッチョイ 7501-cb5P)
2019/12/09(月) 19:47:30.76ID:FU5EvZBv0 ここには北海道のグラサンスーパーハゲザーこないのー?
69デフォルトの名無しさん (ワッチョイ 4d7c-TCJi)
2019/12/09(月) 20:06:58.60ID:JYKNIWO60 >>67
ブックとシートを指定せずにセルを指定してるから取得できないと何度…
指定してないからアクティブなシートを拾いに行く
アクティブなシートに名前の定義がなければ当然名前の定義を取得できるわけがない
ブックとシートを指定せずにセルを指定してるから取得できないと何度…
指定してないからアクティブなシートを拾いに行く
アクティブなシートに名前の定義がなければ当然名前の定義を取得できるわけがない
70デフォルトの名無しさん (アークセー 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
死ね
死ね
170デフォルトの名無しさん (ブーイモ MM02-Cxlv)
2019/12/18(水) 20:40:24.52ID:eYqAoNFQM Officeクリップボードをクリアするにはどうしたらよいですか?
171デフォルトの名無しさん (ワッチョイ 4e68-xO71)
2019/12/18(水) 21:42:34.31ID:enbCu13E0 >>161
ちゅまん
ちゅまん
172デフォルトの名無しさん (アークセー Sxdf-kCbJ)
2019/12/18(水) 22:44:40.50ID:ycaRvEPMx >>171
かわいい
かわいい
173デフォルトの名無しさん (ワッチョイ e279-40qP)
2019/12/18(水) 23:33:23.01ID:kDyrT7eN0 >>170
その文言でぐぐれ
その文言でぐぐれ
174デフォルトの名無しさん (ワッチョイ f71f-DXsO)
2019/12/19(木) 17:59:43.75ID:OOaAV86L0 ちょっと教えて下さい
自動的に新しいcsvファイルが保存されてくるフォルダがあって
新しいファイルが保存されたら処理をするってコードを作りたいんですが
どんな感じにしたらよいのかアイデアが浮かびません
イメージは処理開始としてから処理停止とするまでずっと監視と処理をし続ける感じです
正攻法ってどんな感じでしょう?
自動的に新しいcsvファイルが保存されてくるフォルダがあって
新しいファイルが保存されたら処理をするってコードを作りたいんですが
どんな感じにしたらよいのかアイデアが浮かびません
イメージは処理開始としてから処理停止とするまでずっと監視と処理をし続ける感じです
正攻法ってどんな感じでしょう?
175デフォルトの名無しさん (オッペケ Srcb-KMkw)
2019/12/19(木) 18:07:29.48ID:FlPgbXc+r 定期的にフォルダの更新日時かファイル数を比較
176デフォルトの名無しさん (ミカカウィ FFfb-On3P)
2019/12/19(木) 19:15:47.42ID:PZllcG7iF C#に乗り換えてFileSystemWatcherかな
そういうのはサービスにして常時起動したいだろ?どのみちVBAじゃ無理がある
そういうのはサービスにして常時起動したいだろ?どのみちVBAじゃ無理がある
177デフォルトの名無しさん (ワッチョイ 5701-CZMl)
2019/12/19(木) 20:13:02.64ID:r3z4nZn+0 >>174
csvデータは一般機能のpower queryで「フォルダ指定」で取得してから、何らかの加工をする必要があればVBAでやるというのはどうでしょう?
csvデータは一般機能のpower queryで「フォルダ指定」で取得してから、何らかの加工をする必要があればVBAでやるというのはどうでしょう?
178デフォルトの名無しさん (ワッチョイ f7ca-+Tiu)
2019/12/19(木) 20:52:54.37ID:Uvgz+C1W0 >>174
Application.OnTimeでググればいろいろ出てくる
Excel/VBA: 特定のフォルダ内のファイルの更新状況を監視するマクロ
http://pineplanter.moo.jp/non-it-salaryman/2016/12/30/excel-vba-folder-monitor/
Application.OnTimeでググればいろいろ出てくる
Excel/VBA: 特定のフォルダ内のファイルの更新状況を監視するマクロ
http://pineplanter.moo.jp/non-it-salaryman/2016/12/30/excel-vba-folder-monitor/
179174 (ワッチョイ f71f-M3rQ)
2019/12/19(木) 21:50:34.66ID:OOaAV86L0180デフォルトの名無しさん (ワッチョイ b7da-6AKx)
2019/12/19(木) 22:24:23.56ID:O8pz/cv40 >>179
悪用すると色々できそうだな
悪用すると色々できそうだな
181デフォルトの名無しさん (ワッチョイ 9f2c-1ZZR)
2019/12/20(金) 10:20:51.92ID:A+TGdcd90 ファイルのタイムスタンプで判断すれば?
182デフォルトの名無しさん (ワッチョイ 9f2c-1ZZR)
2019/12/20(金) 11:57:58.87ID:A+TGdcd90 Ruby で、ファイルの最終更新時刻を取得する
fs = File::Stat.new( "./a.txt" )
p fs.mtime #=> 2018-01-16 13:36:40 +0900 最終更新時刻
p current = Time.now #=> 2019-12-20 11:54:02 +0900
p current - fs.mtime, fs.mtime - current
#=> 60733042.351125, -60733042.351125
fs = File::Stat.new( "./a.txt" )
p fs.mtime #=> 2018-01-16 13:36:40 +0900 最終更新時刻
p current = Time.now #=> 2019-12-20 11:54:02 +0900
p current - fs.mtime, fs.mtime - current
#=> 60733042.351125, -60733042.351125
183デフォルトの名無しさん (ワッチョイ 9fea-mb36)
2019/12/20(金) 15:07:41.92ID:INeYifjy0 >>179
ファイルのアーカイヴ属性を変更すればいいよ。これなら新規以外にも、変更ファイルも拾えるはず。
ファイルのアーカイヴ属性を変更すればいいよ。これなら新規以外にも、変更ファイルも拾えるはず。
184デフォルトの名無しさん (ワッチョイ f78e-H4w9)
2019/12/20(金) 15:08:25.80ID:CBAVBsMi0 馬鹿ばっか
185デフォルトの名無しさん (ブーイモ MMfb-BnkS)
2019/12/20(金) 15:24:50.75ID:CkbICV7EM ハゲばっか
186デフォルトの名無しさん (ワッチョイ b7da-prDO)
2019/12/20(金) 20:34:34.24ID:UWWbjOVR0 馴鹿ばっか
187デフォルトの名無しさん (オッペケ Srcb-KMkw)
2019/12/21(土) 11:10:49.09ID:lLQbKr+9r クリスマスだから
188デフォルトの名無しさん (ワッチョイ d75f-+Tiu)
2019/12/21(土) 19:08:13.95ID:reWWVMAr0 セルに指定したフォントの情報などを変数(オブジェクト?)として
保持して、別のセルに貼り付けることはできないでしょうか
Public Sub textMacro()
ActiveSheet.Cells(1, 1).Select
ActiveCell.Value = "testTESTtest"
ActiveCell.Characters(Start:=5, Length:=4).Font.ColorIndex = 3
End Sub
こんな感じで、文字列の途中で色を変えたりフォントを変えたり
した情報を構造体配列として保持しておいて、ソートしたり
特定条件で抽出したりしたデータを、書式ごと別のセルに
貼り付けたいのです
上記のようなコードで一旦別のワークシートに書き込んでやって、
そこを参照してコピーすれば解決します
ですが作業用ワークシートを作るのが美しくないので、なにか
方法がないものかと悩んでいます
保持して、別のセルに貼り付けることはできないでしょうか
Public Sub textMacro()
ActiveSheet.Cells(1, 1).Select
ActiveCell.Value = "testTESTtest"
ActiveCell.Characters(Start:=5, Length:=4).Font.ColorIndex = 3
End Sub
こんな感じで、文字列の途中で色を変えたりフォントを変えたり
した情報を構造体配列として保持しておいて、ソートしたり
特定条件で抽出したりしたデータを、書式ごと別のセルに
貼り付けたいのです
上記のようなコードで一旦別のワークシートに書き込んでやって、
そこを参照してコピーすれば解決します
ですが作業用ワークシートを作るのが美しくないので、なにか
方法がないものかと悩んでいます
189デフォルトの名無しさん (ワッチョイ f77c-Mpc3)
2019/12/21(土) 19:30:42.69ID:EDn7hR2k0 >>188
rangeにでも入れとけばいいんじゃないの
rangeにでも入れとけばいいんじゃないの
190デフォルトの名無しさん (ワッチョイ d75f-+Tiu)
2019/12/21(土) 19:57:20.88ID:reWWVMAr0191デフォルトの名無しさん (ワッチョイ b7da-r9Jq)
2019/12/21(土) 20:19:43.43ID:Z2fXXpuT0 アドバンスフィルタ使うとか。
192デフォルトの名無しさん (ワッチョイ 5701-EwPn)
2019/12/21(土) 21:42:26.79ID:u7lOGHHR0 >>188
activecellは rangeオブジェクト
rangeオブジェクトは必ずどこかの実態セルに紐付けしないと設定、参照できない
なので、実態セルを使いたくなければ、仮想的に実装するしかない
全てを網羅するには、それは非現実的(ムダ)だから私ならやらない
あとの判断はお任せする
(may be. GL)
activecellは rangeオブジェクト
rangeオブジェクトは必ずどこかの実態セルに紐付けしないと設定、参照できない
なので、実態セルを使いたくなければ、仮想的に実装するしかない
全てを網羅するには、それは非現実的(ムダ)だから私ならやらない
あとの判断はお任せする
(may be. GL)
193デフォルトの名無しさん (ワッチョイ 5701-fd2f)
2019/12/21(土) 21:50:56.66ID:vmSiEfoS0 ここには北海道のグラサンのスーパーハゲザーこないのー?
194デフォルトの名無しさん (アークセー Sxcb-KMkw)
2019/12/21(土) 22:03:15.47ID:xOT/WAE8x >>190
セルのコピーで済む処理をわざわざスクラッチする意味があるのか?
マクロ言語で車輪の再発明をするのは無駄だし結果的に美しくないものが出来上がって終わりなことが多いぞ
まぁ文字列書式の取得をするならRange.Charactersクラスを対象にForで一文字ずつループを回して、Fontプロパティで取れる各フォント属性を調べて構造体配列に格納していけば良い
Characters(i, 1)とか指定すれば一文字ずつ調べられる
具体的にはFontクラスのうち
Bold, ColorまたはColorIndex, FontStyle, Italic, Name, Size, ThemeColor, ThemeFont, Underlineあたりを取得しとけば何とかなるんじゃないか
セルのコピーで済む処理をわざわざスクラッチする意味があるのか?
マクロ言語で車輪の再発明をするのは無駄だし結果的に美しくないものが出来上がって終わりなことが多いぞ
まぁ文字列書式の取得をするならRange.Charactersクラスを対象にForで一文字ずつループを回して、Fontプロパティで取れる各フォント属性を調べて構造体配列に格納していけば良い
Characters(i, 1)とか指定すれば一文字ずつ調べられる
具体的にはFontクラスのうち
Bold, ColorまたはColorIndex, FontStyle, Italic, Name, Size, ThemeColor, ThemeFont, Underlineあたりを取得しとけば何とかなるんじゃないか
195デフォルトの名無しさん (ワッチョイ d75f-+Tiu)
2019/12/21(土) 22:26:10.14ID:reWWVMAr0 >>192
>>194
内部データとして、特定の文字だけボールドにしたり赤字にしたりしたデータを
保持しておいて、それをそのままセルに貼れないだろうかという趣旨でした
全然実用性のない例ですが、何らかの名簿データを元データとして入力すると
して、「佐藤」という名字だけを赤で表示したい、というケースがあったとします。
このとき、表示するときに年齢別だったり性別だったりの条件で抽出したりする
際に、毎回セルにデータを書き込むときにフォントの設定をする必要があるのか、
一度設定済みのデータを貼れば済むような方法があるのか、という質問でした
現在は毎回貼るたびにフォントの設定をしているので、もっと効率的な方法が
あるのではないかと考えた次第
でも残念ながら、どうやらなさそうですね
確かにセルをコピーすれば済む話なので、断念します
>>194
内部データとして、特定の文字だけボールドにしたり赤字にしたりしたデータを
保持しておいて、それをそのままセルに貼れないだろうかという趣旨でした
全然実用性のない例ですが、何らかの名簿データを元データとして入力すると
して、「佐藤」という名字だけを赤で表示したい、というケースがあったとします。
このとき、表示するときに年齢別だったり性別だったりの条件で抽出したりする
際に、毎回セルにデータを書き込むときにフォントの設定をする必要があるのか、
一度設定済みのデータを貼れば済むような方法があるのか、という質問でした
現在は毎回貼るたびにフォントの設定をしているので、もっと効率的な方法が
あるのではないかと考えた次第
でも残念ながら、どうやらなさそうですね
確かにセルをコピーすれば済む話なので、断念します
196デフォルトの名無しさん (ワッチョイ 5701-EwPn)
2019/12/21(土) 23:09:32.16ID:u7lOGHHR0 >>195
鈴木 健二
の鈴木だけを赤文字に設定したセルの書式コピーして
鈴木 太郎
セルに貼り付けしても、鈴木だけを赤にはできなかった
(バージョンによって違うかもだが)
ロジックでやるしかないんじゃないかな
鈴木or宇都宮を赤にするとか
鈴木 健二
の鈴木だけを赤文字に設定したセルの書式コピーして
鈴木 太郎
セルに貼り付けしても、鈴木だけを赤にはできなかった
(バージョンによって違うかもだが)
ロジックでやるしかないんじゃないかな
鈴木or宇都宮を赤にするとか
197デフォルトの名無しさん (ワッチョイ d75f-+Tiu)
2019/12/21(土) 23:41:09.25ID:reWWVMAr0 >>196
色々ありがとうございます
今回やりたいのは、鈴木だけを赤くした「鈴木 健二」というセルを作るのに、
事前にデータを作ってからセルに貼り付けたいということですから、
「鈴木 太郎」の「鈴木」が赤くならなくても特に問題ありません
この例で言うなら、コピペ以外の方法で、同じく鈴木だけが赤くなった鈴木健二の
セルを効率よく作りたい、ということですね
色々ありがとうございます
今回やりたいのは、鈴木だけを赤くした「鈴木 健二」というセルを作るのに、
事前にデータを作ってからセルに貼り付けたいということですから、
「鈴木 太郎」の「鈴木」が赤くならなくても特に問題ありません
この例で言うなら、コピペ以外の方法で、同じく鈴木だけが赤くなった鈴木健二の
セルを効率よく作りたい、ということですね
198デフォルトの名無しさん (アークセー Sxcb-KMkw)
2019/12/22(日) 00:19:45.02ID:4IcKy9Blx >>197
構造体とかでパラメータ設定すればやれないことはない
書式設定対象の文字列の開始オフセット位置と文字列長、フォント属性の設定値からなる構造体配列を作って、一括でRangeオブジェクトのプロパティに代入すれば良い
ただしパラメータを動的に指定する処理やらUIやらを構築する手間とか考えたら結局セルコピーでよくねってなる
構造体とかでパラメータ設定すればやれないことはない
書式設定対象の文字列の開始オフセット位置と文字列長、フォント属性の設定値からなる構造体配列を作って、一括でRangeオブジェクトのプロパティに代入すれば良い
ただしパラメータを動的に指定する処理やらUIやらを構築する手間とか考えたら結局セルコピーでよくねってなる
199デフォルトの名無しさん (ブーイモ MMbf-AIRZ)
2019/12/22(日) 09:13:02.87ID:m/MVfWr2M office2010から2016へ変えたらマクロの遅さが気になって
セルコピーを別の方法でやれないか考えてる
セルコピーを別の方法でやれないか考えてる
200デフォルトの名無しさん (ワッチョイ 9f59-Lpm9)
2019/12/22(日) 10:54:11.14ID:sgFeqmUl0 マクロが遅いんじゃなくてPCのスペックが貧弱過ぎるんじゃないか
201デフォルトの名無しさん (ワッチョイ d75f-+Tiu)
2019/12/22(日) 11:54:58.14ID:M+v9sXGU0202デフォルトの名無しさん (ワッチョイ b7da-r9Jq)
2019/12/22(日) 12:26:41.63ID:cYIprE7S0203デフォルトの名無しさん (アークセー Sxcb-KMkw)
2019/12/22(日) 14:42:00.45ID:qo1j1gBdx >>201
そこまでやるならmhtか何かでコード生成してからxls変換してレンダリングする方がいいよねって話になってしまうからな
そこまでやるならmhtか何かでコード生成してからxls変換してレンダリングする方がいいよねって話になってしまうからな
204デフォルトの名無しさん (ワッチョイ ce75-RbSw)
2019/12/27(金) 23:18:51.19ID:89CBNjra0 んあ
205デフォルトの名無しさん (ワッチョイ 0101-Nxir)
2019/12/27(金) 23:55:11.89ID:kLvnMS830 北海道のグラサンスーパーハゲザーはここにはこないのー?
206デフォルトの名無しさん (ワッチョイ d4da-K0SF)
2019/12/28(土) 10:04:17.04ID:Ht/sR5FE0 北海道にいるんだろ
207デフォルトの名無しさん (ワッチョイ 0101-Nxir)
2019/12/28(土) 11:09:10.42ID:iMlStgtR0 あなたのハゲにサクセスしたい
208デフォルトの名無しさん (アウアウウー Saab-WVy2)
2019/12/28(土) 17:00:07.97ID:SHykekh8a 休みに入って大人しくなったな
209デフォルトの名無しさん (ワッチョイ 067d-K+LJ)
2020/01/01(水) 22:49:57.07ID:/3koq0Lq0 フォルダ名を取得し名前を変える処理をしたいのですが、フォルダ名の頭に0がついているとセルに取り込んだ際、数値扱いされきえてしまいます。何かいい方法ないでしょうか?
ほぼネットから引用したものですが。。
Sub folder()
Dim folderPath As String
folderPath = Sheets(2).[B1]
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim n As Variant
n = fso.GetFolder(folderPath).SubFolders.Count
If (0 < n) Then
Dim I As Long
I = 1
Dim f As Object
For Each f In fso.GetFolder(folderPath).SubFolders
Cells(3 + I,1).Value=Str(f.Name)
I = I + 1
Next f
End If
End Sub
ほぼネットから引用したものですが。。
Sub folder()
Dim folderPath As String
folderPath = Sheets(2).[B1]
Dim fso As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Dim n As Variant
n = fso.GetFolder(folderPath).SubFolders.Count
If (0 < n) Then
Dim I As Long
I = 1
Dim f As Object
For Each f In fso.GetFolder(folderPath).SubFolders
Cells(3 + I,1).Value=Str(f.Name)
I = I + 1
Next f
End If
End Sub
210デフォルトの名無しさん (ワッチョイ c268-UAPS)
2020/01/01(水) 22:54:36.69ID:Oh0xulqx0211デフォルトの名無しさん (ワッチョイ 067d-K+LJ)
2020/01/01(水) 23:43:11.75ID:/3koq0Lq0212デフォルトの名無しさん (ワッチョイ ad7c-bcBw)
2020/01/02(木) 00:01:52.13ID:KGMPhTA00213デフォルトの名無しさん (ワッチョイ c268-UAPS)
2020/01/02(木) 00:13:18.61ID:4cnj/64c0 VBAはそもそもビジュアルベーシックフォーアプリケーション
エクセル(他office製品)のための言語
Excelの範疇も何もないよ
エクセル(他office製品)のための言語
Excelの範疇も何もないよ
214デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/02(木) 00:44:32.37ID:C9nM6Ix2x セルにフォルダ名を入れなきゃならない理由が全く分からない
215デフォルトの名無しさん (ワッチョイ 4259-F9A1)
2020/01/02(木) 00:52:53.68ID:m04meMbs0 PowerQueryにデータの参照元渡すとか
216デフォルトの名無しさん (ワッチョイ 0610-mVj1)
2020/01/02(木) 11:28:52.88ID:yN8yk3jo0 マクロでCSV書き出ししたデータですが
どうも1行ごとに最後のセルの末尾に勝手に改行コードが入っているようです
これはなんとかならないでしょうか
その改行コードもCRLFで言うところのCRだけのようで、見かけ上全くわかりません
aaa,ddd,ccc
とあったら、cccの末尾に見えないCFが張り付いている感じです
urlエンコードで見ると ccc%0D みたいな感じです
どうしたら綺麗に書き出せますか?
どうも1行ごとに最後のセルの末尾に勝手に改行コードが入っているようです
これはなんとかならないでしょうか
その改行コードもCRLFで言うところのCRだけのようで、見かけ上全くわかりません
aaa,ddd,ccc
とあったら、cccの末尾に見えないCFが張り付いている感じです
urlエンコードで見ると ccc%0D みたいな感じです
どうしたら綺麗に書き出せますか?
217デフォルトの名無しさん (スプッッ Sd0a-UAPS)
2020/01/02(木) 12:02:15.68ID:33UW29zWd218デフォルトの名無しさん (ワッチョイ e5da-UAPS)
2020/01/02(木) 12:48:11.80ID:/IgTqK/90 セル内で改行しても平気か確認した方がいい
219デフォルトの名無しさん (ワッチョイ ad7c-bcBw)
2020/01/02(木) 12:53:49.13ID:KGMPhTA00220デフォルトの名無しさん (ワッチョイ ad7c-bcBw)
2020/01/02(木) 12:58:08.65ID:KGMPhTA00 あと勝手に入ってるのではなく元々のテキストファイルに入ってるんだろう
221デフォルトの名無しさん (ワッチョイ 0610-pIXJ)
2020/01/02(木) 15:17:06.96ID:yN8yk3jo0 216です
>>217
csvの中のデータとして配列に入っています。書き出したcsvは普通に数行のカンマ区切りです。
それをjavascriptで配列へ取り込みしたときに、
二次元配列データの一行の最後のデータの末尾に毎行追加されている感じです。
配列内
aaa,ddd,ccc%0D
aaa,ddd,ccc%0D
aaa,ddd,ccc%0D
csvとしての改行・配列構成は崩れていません。
ちなみに書き出しは
ActiveWorkbook.SaveAs Filename:=csvName, FileFormat:=xlCSV
です。win7時代に作ったマクロをwin10で使っていますが、それもあるんでしょうか…
>>219
EXCELの改行仕様は知りませんでした。ありがとうございます。
末尾に列を1つ増やしたら取りたいデータにはつかなくなったので
(おそらく、増やした列に%0Dが移動したのかとw)、
若干気持ち悪いですが、趣味プログラムなので運用で対応します。
みなさんありがとうございました。
>>217
csvの中のデータとして配列に入っています。書き出したcsvは普通に数行のカンマ区切りです。
それをjavascriptで配列へ取り込みしたときに、
二次元配列データの一行の最後のデータの末尾に毎行追加されている感じです。
配列内
aaa,ddd,ccc%0D
aaa,ddd,ccc%0D
aaa,ddd,ccc%0D
csvとしての改行・配列構成は崩れていません。
ちなみに書き出しは
ActiveWorkbook.SaveAs Filename:=csvName, FileFormat:=xlCSV
です。win7時代に作ったマクロをwin10で使っていますが、それもあるんでしょうか…
>>219
EXCELの改行仕様は知りませんでした。ありがとうございます。
末尾に列を1つ増やしたら取りたいデータにはつかなくなったので
(おそらく、増やした列に%0Dが移動したのかとw)、
若干気持ち悪いですが、趣味プログラムなので運用で対応します。
みなさんありがとうございました。
222デフォルトの名無しさん (ブーイモ MM85-19tT)
2020/01/02(木) 16:37:15.04ID:yYKIO5swM 北海道のグラサンスーパーハゲザーはここにはこないのー?
223デフォルトの名無しさん (ワッチョイ 2eda-UAPS)
2020/01/02(木) 17:52:03.38ID:YgEQc8yF0224デフォルトの名無しさん (ワッチョイ 422c-RM0q)
2020/01/02(木) 21:25:07.68ID:ShHqIFTQ0 一般論として例えば、Ruby のCSV の規格にも、
行区切り文字・列区切り文字・クォート文字などがある
特に設定しないデフォルトでは、それらは、
改行コード・カンマ・ダブルクォーテーションになる
もし、それらが無ければ、CSVの要件を満たさないw
つまり、CSVの規格ではありませんw
行区切り文字・列区切り文字・クォート文字などがある
特に設定しないデフォルトでは、それらは、
改行コード・カンマ・ダブルクォーテーションになる
もし、それらが無ければ、CSVの要件を満たさないw
つまり、CSVの規格ではありませんw
225デフォルトの名無しさん (アウアウウー Saa5-VrsN)
2020/01/02(木) 23:23:58.57ID:1vLrUBFwa ルビカスが何を言おうと、世の中ではExcelが出力するCSVが標準のCSVだ
226デフォルトの名無しさん (ワッチョイ 5991-8sDV)
2020/01/03(金) 10:32:03.45ID:R/lajPDg0 CSVは自前でテキストファイル読み込み+自前で区切り扱いが基本。
区切りが何であろうと、データの形式が何であろうと全て自分でコントロール出来るし速度も速い。
区切りが何であろうと、データの形式が何であろうと全て自分でコントロール出来るし速度も速い。
227デフォルトの名無しさん (ワッチョイ 49d0-Fu3+)
2020/01/03(金) 12:29:48.12ID:V2sewd5k0228デフォルトの名無しさん (ワッチョイ 4279-A9ky)
2020/01/03(金) 18:33:14.85ID:LoHkYQxe0 使い続ける以上CSVとの戦いは続くのだ
229デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/03(金) 18:50:10.73ID:k7eftYc7x モダンExcelが一般化してきた今ならクエリでCSVの開き方を指定して読み込むのがいいんじゃないの
CSVをエクセルで直接開くといろいろ勝手なことをしてくれるので
CSVをエクセルで直接開くといろいろ勝手なことをしてくれるので
230デフォルトの名無しさん (スフッ Sd62-F9A1)
2020/01/03(金) 19:06:41.78ID:esau8hBed PowerQueryのコードを書くのはVBA以上にハードルが高いぞ
231デフォルトの名無しさん (ブーイモ MMb6-OUNV)
2020/01/03(金) 19:55:22.39ID:3Uhjf7eSM PowerQueryコード書かなきゃいけないの?
GUIでできる範囲だと不十分なの?
GUIでできる範囲だと不十分なの?
232デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/03(金) 19:58:54.81ID:k7eftYc7x そんなにハードル高いか?
テキストファイルの読み込みの処理をスクラッチするより明らかに楽だし処理速度も速いと思うが
例えば4列のCSVをSJIS(Windows-J31)でデコードしてカンマ区切りで読み込んでSheet1のA1セルから書き出すとしたらこんな感じ
Sub ReadCSV()
With Worksheets("Sheet1")
With .QueryTables.Add(Connection:="TEXT;ソースファイルのパス", Destination:=.Range("A1"))
.TextFilePlatform = 932
.TextFileCommaDelimiter = True
.RefreshStyle = xlOverwriteCells
.TextFileColumnDataTypes = Array(xlTextFormat, xlTextFormat, xlTextFormat, xlTextFormat)
.Refresh
.Delete
End With
End With
End Sub
テキストファイルの読み込みの処理をスクラッチするより明らかに楽だし処理速度も速いと思うが
例えば4列のCSVをSJIS(Windows-J31)でデコードしてカンマ区切りで読み込んでSheet1のA1セルから書き出すとしたらこんな感じ
Sub ReadCSV()
With Worksheets("Sheet1")
With .QueryTables.Add(Connection:="TEXT;ソースファイルのパス", Destination:=.Range("A1"))
.TextFilePlatform = 932
.TextFileCommaDelimiter = True
.RefreshStyle = xlOverwriteCells
.TextFileColumnDataTypes = Array(xlTextFormat, xlTextFormat, xlTextFormat, xlTextFormat)
.Refresh
.Delete
End With
End With
End Sub
233デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/03(金) 20:07:37.72ID:k7eftYc7x PowerQueryだったらもっと簡単だろう
Csv.Documentにソースのパスとメタ情報を渡してテーブルを取得するだけだしGUIでステップ記録できる
Csv.Documentにソースのパスとメタ情報を渡してテーブルを取得するだけだしGUIでステップ記録できる
234デフォルトの名無しさん (ワッチョイ 4279-A9ky)
2020/01/03(金) 20:56:20.20ID:LoHkYQxe0 CSV読み込みの話してんのになんで書き込みの回答してんだろうこの子
235デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/03(金) 21:32:33.80ID:k7eftYc7x236デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/03(金) 22:10:30.43ID:k7eftYc7x237デフォルトの名無しさん (ワッチョイ 2eda-UAPS)
2020/01/03(金) 22:23:49.87ID:X7hap7HH0 >>230
全然。
基本的にはリボンの機能使った操作が1つずつのステップになっていく。
ステップの1つ1つがマクロみたいなもの。
「詳細クエリー」を見て初めて「コードはこうなってるんだ・・・」
という感じ。
もっとも、M Functionのレファレンスやパラメータあたり説明が
英語でもまだ不親切なので、
使えてない部分が多分にはあるけど。
ただ、VBAのように出来る範囲が広範囲なわけではなく、
取得したデータの成形に特化してる。
スクレイピングについては
Pythonみたいに取得対象のWeb画面で
IDやパスワード入力するとか、
ボタンを押すみたいなことも出来ない模様。
全然。
基本的にはリボンの機能使った操作が1つずつのステップになっていく。
ステップの1つ1つがマクロみたいなもの。
「詳細クエリー」を見て初めて「コードはこうなってるんだ・・・」
という感じ。
もっとも、M Functionのレファレンスやパラメータあたり説明が
英語でもまだ不親切なので、
使えてない部分が多分にはあるけど。
ただ、VBAのように出来る範囲が広範囲なわけではなく、
取得したデータの成形に特化してる。
スクレイピングについては
Pythonみたいに取得対象のWeb画面で
IDやパスワード入力するとか、
ボタンを押すみたいなことも出来ない模様。
238デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/03(金) 22:43:05.12ID:3zmXV6NNx データの成形に特化と言ってもVBAでスクラッチすると恐ろしく面倒なJoinとかのSQLチックな処理は全て実行できるので、データ処理の面ではVBAより手軽で便利
あとAccessDBやSQL ServerやOBDCはもちろん、ファイルシステムとかExchangeサーバとかSharePointリストとか、およそデータベースとして扱えるデータストアの情報は全て取得できる
フォルダ内のファイルの属性情報を取得する処理のためだけにいちいちFileSystemObjectのインスタンスとかを使ってスクラッチする必要がなくなると考えればめちゃくちゃ便利
あとAccessDBやSQL ServerやOBDCはもちろん、ファイルシステムとかExchangeサーバとかSharePointリストとか、およそデータベースとして扱えるデータストアの情報は全て取得できる
フォルダ内のファイルの属性情報を取得する処理のためだけにいちいちFileSystemObjectのインスタンスとかを使ってスクラッチする必要がなくなると考えればめちゃくちゃ便利
239デフォルトの名無しさん (ワッチョイ 0610-pIXJ)
2020/01/04(土) 15:59:54.32ID:dDunGyfu0 >>227
みています
ご指摘の通り、\nでspritかけてました!
\nってCR+LFじゃなかったんですね…
この後都合があるのですぐには試せませんが、
その辺確認してみます。
ありがとうございます!
みています
ご指摘の通り、\nでspritかけてました!
\nってCR+LFじゃなかったんですね…
この後都合があるのですぐには試せませんが、
その辺確認してみます。
ありがとうございます!
240デフォルトの名無しさん (ワッチョイ c268-UAPS)
2020/01/04(土) 16:12:12.74ID:8fEwlZFG0 \nはLFじゃなかったか
windowsの改行は\r\nだったような
windowsの改行は\r\nだったような
241デフォルトの名無しさん (ワッチョイ 0602-G4oO)
2020/01/04(土) 17:52:00.86ID:ALZ03HNg0 EditBoxでは\r\nでRichEditBoxでは\nだねWindows
242デフォルトの名無しさん (ワッチョイ e5da-UAPS)
2020/01/04(土) 17:56:48.54ID:+4weKQQc0 CR+LFの定数の vbCrLf か vbNewLine でいいんじゃね
243デフォルトの名無しさん (ワッチョイ c268-UAPS)
2020/01/04(土) 18:04:55.94ID:8fEwlZFG0 vbNewLineいいよね
244デフォルトの名無しさん (ワッチョイ 49d0-Fu3+)
2020/01/04(土) 18:23:56.78ID:ZrFrOERU0245デフォルトの名無しさん (ワッチョイ 9901-19tT)
2020/01/04(土) 18:40:58.78ID:HwWXKum00 北海道のグラサンスーパーハゲザーはここにはこないのー?
246デフォルトの名無しさん (ワッチョイ e5da-UAPS)
2020/01/05(日) 18:31:31.28ID:bipf879T0 いつまで過去の人探してんだよ
247デフォルトの名無しさん (アウアウエー Sa4a-BfT8)
2020/01/05(日) 21:01:37.71ID:7hEhyOPXa Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" ()
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String,
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Expect end of statementとエラーが出ます。
なにがいけないのでしょうか?
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String,
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
Expect end of statementとエラーが出ます。
なにがいけないのでしょうか?
248デフォルトの名無しさん (ワッチョイ 49d0-Fu3+)
2020/01/05(日) 22:30:48.28ID:+vnZOjsp0 >>247
・DLL名(urlmon)の後の()が余計
・1行目と2行目の末尾に「半角スペース」+「半角アンダースコア」がちゃんとついているか確認
↓こんなかんじ
Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
・DLL名(urlmon)の後の()が余計
・1行目と2行目の末尾に「半角スペース」+「半角アンダースコア」がちゃんとついているか確認
↓こんなかんじ
Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" _
Alias "URLDownloadToFileA" (ByVal pCaller As Long, ByVal szURL As String, _
ByVal szFileName As String, ByVal dwReserved As Long, ByVal lpfnCB As Long) As Long
249デフォルトの名無しさん (アウアウエー Sa4a-BfT8)
2020/01/05(日) 22:56:42.27ID:7hEhyOPXa250デフォルトの名無しさん (ワッチョイ be02-RM0q)
2020/01/06(月) 00:41:12.95ID:NdtK1Vru0 初心者につき基本的な質問かもしれず恐縮なんですが、
@Range("A10:B12").Value = Range("A1:A2").Value
とすると、A12:B12は#N/Aとなり、A10:A11、B10:B11はA1:A2の値が貼り付けられるのはなぜでしょうか。
ARange("A10").Value = Range("A1:B2").Value
とすると、A10にA1の値が貼付けられるのはなぜでしょうか。
@については、入力元の行・列範囲が1の場合はそれをひと固まりと認識して、
出力先の行列範囲>1の部分も入力元の値を入れようとするため
Aについては、エクセルの構成上、選択範囲の開始は左上端であり、
出力先が1セルしかない場合は入力元の範囲の開始セルのみを貼り付けようとするため
などと理由(というか状況でしかない)を言語化してみたのですがいまいち腑に落ちず…
もし仕組みをご存知の方がいらっしゃったら教えていただけませんか…?
@Range("A10:B12").Value = Range("A1:A2").Value
とすると、A12:B12は#N/Aとなり、A10:A11、B10:B11はA1:A2の値が貼り付けられるのはなぜでしょうか。
ARange("A10").Value = Range("A1:B2").Value
とすると、A10にA1の値が貼付けられるのはなぜでしょうか。
@については、入力元の行・列範囲が1の場合はそれをひと固まりと認識して、
出力先の行列範囲>1の部分も入力元の値を入れようとするため
Aについては、エクセルの構成上、選択範囲の開始は左上端であり、
出力先が1セルしかない場合は入力元の範囲の開始セルのみを貼り付けようとするため
などと理由(というか状況でしかない)を言語化してみたのですがいまいち腑に落ちず…
もし仕組みをご存知の方がいらっしゃったら教えていただけませんか…?
251デフォルトの名無しさん (ワッチョイ 4d8e-1zv1)
2020/01/06(月) 02:06:32.04ID:IxstRIsW0 >>250
原因はお前の知能障害の頭
原因はお前の知能障害の頭
252デフォルトの名無しさん (ワッチョイ 422c-RM0q)
2020/01/06(月) 08:01:31.75ID:jMeFAWx00 Range の使い方ぐらい、検索すれば見つかるのじゃないの?
他人が作った仕様を、推測するのは時間のムダ
それに、推測して当たっているように見えても、
仕様書で確認していない推測では、どのみち仕事では使えない
君のその推測は、確実なんだろうね?
と、単に聞かれても、返答に困るw
たぶん、間違いないと思いますと言っても、
たぶんじゃ困る、仕様書を確認してくれと言われるので、
結局、推測した時間はムダw
他人が作った仕様を、推測するのは時間のムダ
それに、推測して当たっているように見えても、
仕様書で確認していない推測では、どのみち仕事では使えない
君のその推測は、確実なんだろうね?
と、単に聞かれても、返答に困るw
たぶん、間違いないと思いますと言っても、
たぶんじゃ困る、仕様書を確認してくれと言われるので、
結局、推測した時間はムダw
253デフォルトの名無しさん (オイコラミネオ MM49-Ivq/)
2020/01/06(月) 08:04:47.15ID:D3635f2eM254デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/06(月) 08:31:23.15ID:6Tgfzfa6x Power Queryの式がVBAで取得編集出来るの初めて知った
凄い便利だわ
凄い便利だわ
255デフォルトの名無しさん (ワッチョイ 2eda-UAPS)
2020/01/06(月) 11:36:21.98ID:MgTSKGZp0256デフォルトの名無しさん (ワッチョイ 0610-pIXJ)
2020/01/06(月) 16:14:57.44ID:uFshMbVq0257デフォルトの名無しさん (アークセー Sxf1-uWm+)
2020/01/06(月) 20:19:04.42ID:3xuf6Bblx >>255
そうそうこのあたりの機能だな
流石にM言語はエディタ使って書いた方が綺麗に書けるからマクロ記録に頼る理由はないが
あとModelオブジェクトというのも追加されてて、そっちはデータモデル関連を扱える
VBAも本当にモダンExcel向けの機能が充実してきたなぁという感じ
そうそうこのあたりの機能だな
流石にM言語はエディタ使って書いた方が綺麗に書けるからマクロ記録に頼る理由はないが
あとModelオブジェクトというのも追加されてて、そっちはデータモデル関連を扱える
VBAも本当にモダンExcel向けの機能が充実してきたなぁという感じ
258デフォルトの名無しさん (ワッチョイ ade6-UAPS)
2020/01/06(月) 22:02:59.64ID:CTb2ztSI0 モダンってオワコンWPFの印象が強すぎてちょっと・・・
259デフォルトの名無しさん (ワッチョイ c268-UAPS)
2020/01/06(月) 22:53:04.03ID:TKdH9VSv0 WPFとSilverlightどっちを習得しようと悩んでた時期が、僕にもありました
260デフォルトの名無しさん (ワッチョイ 9901-Ivq/)
2020/01/07(火) 00:47:29.56ID:D2brWHFz0261デフォルトの名無しさん (スプッッ Sdc2-BdgP)
2020/01/07(火) 09:28:54.82ID:uInZCPkrd その未来はPythonで実現してます
262デフォルトの名無しさん (アウアウエー Sa7f-G18V)
2020/01/08(水) 23:15:43.07ID:a625Lcnla263デフォルトの名無しさん (ワッチョイ 5fda-///2)
2020/01/08(水) 23:29:57.17ID:GYx+h9AP0 どうでもいいんじゃないの。
そんなのが会社のPCで普通に使えるようになるのは、どうせ何年も先の事だろう。
そんなのが会社のPCで普通に使えるようになるのは、どうせ何年も先の事だろう。
264デフォルトの名無しさん (アウアウエー Sa7f-G18V)
2020/01/09(木) 00:01:07.52ID:0xvQwvASa >今後数週間以内に企業向けの“Office 365”(E3/E5ライセンス)で利用可能となる。
読めないのか?後数週間でVBAは駆逐されるかもしれんのだぞ?
読めないのか?後数週間でVBAは駆逐されるかもしれんのだぞ?
265デフォルトの名無しさん (ワッチョイ 5fe6-lB9F)
2020/01/09(木) 00:35:06.13ID:2TKjHA5n0 マクロウィルスの共有機能まであるのか
266デフォルトの名無しさん (ワッチョイ 5f7c-woae)
2020/01/09(木) 00:58:29.64ID:C+9x90AF0 何ヶ月先もVBAの依頼で詰まってるけど
267デフォルトの名無しさん (ワッチョイ 5f8a-SoGe)
2020/01/09(木) 01:49:21.73ID:yss0diSi0 若い人は知らないだろうけど、昔、リニアモーターカーというのがあってね。
268デフォルトの名無しさん (アークセー Sxb3-BW+8)
2020/01/09(木) 07:58:16.77ID:9wujfMIjx269デフォルトの名無しさん (スップ Sd1f-3KZm)
2020/01/09(木) 09:59:33.76ID:jgUkMqMwd >>262
VBA終了の合図
VBA終了の合図
270デフォルトの名無しさん (ドコグロ MM53-JyDu)
2020/01/09(木) 10:11:49.50ID:+yE1fb2HM > 既存のVBAは比較的ハイスキルな開発者向けである
どこの時空の話だろう
どこの時空の話だろう
271デフォルトの名無しさん (ワッチョイ df91-88rQ)
2020/01/09(木) 10:23:13.99ID:0t9GlNIo0 これWeb版の機能だろ。
そもそもExcel95の時代からマクロの記録機能は有るだろ。
そもそもExcel95の時代からマクロの記録機能は有るだろ。
272デフォルトの名無しさん (ワッチョイ ffcc-ErPi)
2020/01/09(木) 20:22:30.66ID:QTlbFy+y0 ↓のマクロを実行するとエラー438になって動きません。原因を教えてくださいm(__)m
・DE3とDS3の値のいずれかの高い数値が1であれば、11行目〜12行目を削除
・DE3とDS3の値のいずれか高い数値が2であれば何もしない
・DE3とDS3の値のいずれか高い数値が3以上であれば、11行目〜12行目をコピーして
DE3とDS3のいずれか高い数値−2回を、13行目以降に2行づつ貼り付ける
*DE3とDS3はいずれも1以上の整数です
Dim i As Integer
Dim cnt As Integer, a As Range
With ActiveSheet
i = .Max(Range("DE3", "DS3"))
Select Case i
Case Is = 1
.Rows("11:12").Delete
Case Is = 2
' なにもしない
Case Is >= 3
.Rows("11:12").Copy
Set a = .Range("A13") ' 貼り付け開始位置
For cnt = 3 To i '3以上のときはその値回数分貼り付けを繰り返す
a.PasteSpecial xlPasteAllMergingConditionalFormats '貼り付ける種類はお好みで
Set a = a.Offset(2, 0) ' 貼り付け先を2行下へ
Next cnt
End Select
End With
End Sub
・DE3とDS3の値のいずれかの高い数値が1であれば、11行目〜12行目を削除
・DE3とDS3の値のいずれか高い数値が2であれば何もしない
・DE3とDS3の値のいずれか高い数値が3以上であれば、11行目〜12行目をコピーして
DE3とDS3のいずれか高い数値−2回を、13行目以降に2行づつ貼り付ける
*DE3とDS3はいずれも1以上の整数です
Dim i As Integer
Dim cnt As Integer, a As Range
With ActiveSheet
i = .Max(Range("DE3", "DS3"))
Select Case i
Case Is = 1
.Rows("11:12").Delete
Case Is = 2
' なにもしない
Case Is >= 3
.Rows("11:12").Copy
Set a = .Range("A13") ' 貼り付け開始位置
For cnt = 3 To i '3以上のときはその値回数分貼り付けを繰り返す
a.PasteSpecial xlPasteAllMergingConditionalFormats '貼り付ける種類はお好みで
Set a = a.Offset(2, 0) ' 貼り付け先を2行下へ
Next cnt
End Select
End With
End Sub
273デフォルトの名無しさん (ワッチョイ 5fce-lB9F)
2020/01/09(木) 20:37:39.44ID:R5Jo4gYe0 >>272
i = WorksheetFunction.Max(.Range("DE3", "DS3"))
i = WorksheetFunction.Max(.Range("DE3", "DS3"))
275デフォルトの名無しさん (ワッチョイ df01-qx2z)
2020/01/09(木) 21:37:55.27ID:o7IUVb3B0 あなたのハゲにサクセスしたい
276デフォルトの名無しさん (ササクッテロラ Spb3-y1/V)
2020/01/09(木) 23:19:52.51ID:CBGZn1t+p やっぱり少し騒ぎになってたか
お前らこれから少しは
Javascript勉強しといた方がいいぞ
お前らこれから少しは
Javascript勉強しといた方がいいぞ
277デフォルトの名無しさん (ワッチョイ 7f68-lB9F)
2020/01/09(木) 23:35:37.48ID:SuIB+b6T0 >>276
JSは癖があるけど、あれはwebの話
既にあるオブジェクトに対してどうこうするならVBAと特に変わらんぞ
adobeのJSは本当にクソだった
※オブジェクトに名前がついてないので、「topプロパティが一番大きいオブジェクトにはxx」などと名付けをしなければならなかった
JSは癖があるけど、あれはwebの話
既にあるオブジェクトに対してどうこうするならVBAと特に変わらんぞ
adobeのJSは本当にクソだった
※オブジェクトに名前がついてないので、「topプロパティが一番大きいオブジェクトにはxx」などと名付けをしなければならなかった
278デフォルトの名無しさん (ワッチョイ 7f68-lB9F)
2020/01/09(木) 23:36:34.25ID:SuIB+b6T0 VBAで無名関数とか即時関数は別にやらんやろ
webのJS使ってる人が参入しやすいようにしてるだけやで
webのJS使ってる人が参入しやすいようにしてるだけやで
279デフォルトの名無しさん (ブーイモ MM03-XGJ0)
2020/01/10(金) 00:22:51.50ID:D5emfq5uM Googleスプレッドシートの
マクロ(GAS≒Javascript拡張)を移植するだけだぞ
マクロ(GAS≒Javascript拡張)を移植するだけだぞ
280デフォルトの名無しさん (ワッチョイ df01-2es0)
2020/01/10(金) 00:52:55.45ID:1ovLJy7s0 TypeScriptベースってあるけど
本家と比べてどこまで厳格なのか分からんが
本家と比べてどこまで厳格なのか分からんが
281デフォルトの名無しさん (ワッチョイ 7f68-lB9F)
2020/01/10(金) 07:05:02.06ID:uF+RY5wD0 よほどテクニカルな記述しなければ普通に動くじゃろ
282デフォルトの名無しさん (アークセー Sxb3-BW+8)
2020/01/10(金) 07:14:14.47ID:jjRPWpspx Typescriptはアクセス修飾子をサポートしてるから即時関数でのスコープ管理はしなくていいだろ
無名関数は使いどころあるかもしれないが
無名関数は使いどころあるかもしれないが
283デフォルトの名無しさん (スップ Sd1f-3KZm)
2020/01/10(金) 09:48:49.20ID:IluxULEbd 大慌てしてて草
284デフォルトの名無しさん (ラクッペ MM23-sMkA)
2020/01/10(金) 22:41:08.84ID:19Jhwmx5M wshのjscript使うのとはまったく違うのかな?
285デフォルトの名無しさん (ワッチョイ 7f12-3KZm)
2020/01/11(土) 03:59:52.86ID:VgPP357Y0 TSでも時代遅れなんだけどね
286デフォルトの名無しさん (ワッチョイ df01-mnsv)
2020/01/11(土) 04:13:01.78ID:o+klbI+l0 お前らってプログラミング言語の話題になると、何ですぐ時代遅れ論争始めるの?
287デフォルトの名無しさん (ワッチョイ 5fa2-G18V)
2020/01/11(土) 06:14:53.73ID:G5+XY0gL0 結局仕事の効率を上げれるかどうかが肝だけど新しい言語を使ってる俺すごいで思考停止しちゃうんだろうなー
288デフォルトの名無しさん (ドコグロ MM7f-JyDu)
2020/01/11(土) 06:26:51.15ID:Uc6AtsCZM TSが時代遅れはともかくVBAはさすがにもう仕事の効率とかそういう次元の話じゃない
クレジットカードの有効期限が迫ってるようなもんだ
クレジットカードの有効期限が迫ってるようなもんだ
289デフォルトの名無しさん (アウアウウー Saa3-rY/a)
2020/01/11(土) 12:18:46.28ID:4Kbsl1epa Option Explicit
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub TableControl()
Dim ie As InternetExplorer
Dim targetURL As String: targetURL = "http://www.ikachi.org/sample/sample10.html"
Set ie = GetIEObject(targetURL)
If (ie.LocationURL = "") Then
MsgBox "Plz Open the Web page"
Exit Sub
End If
End Sub
Public Function GetIEObject(ByVal targetURL As String) As InternetExplorer
Set GetIEObject = Nothing
Dim sh As Object
Set sh = CreateObject("Shell.Application")
Dim w As Object
For Each w In sh.Windows
If (TypeOf w Is InternetExplorer) And (w.LocationURL = targetURL) Then
Set GetIEObject = w
Exit For
End If
Next
End Function
でie.LocationURL = ""でエラーが出るのですが、booleanだがらでしょうか?
Private Declare PtrSafe Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub TableControl()
Dim ie As InternetExplorer
Dim targetURL As String: targetURL = "http://www.ikachi.org/sample/sample10.html"
Set ie = GetIEObject(targetURL)
If (ie.LocationURL = "") Then
MsgBox "Plz Open the Web page"
Exit Sub
End If
End Sub
Public Function GetIEObject(ByVal targetURL As String) As InternetExplorer
Set GetIEObject = Nothing
Dim sh As Object
Set sh = CreateObject("Shell.Application")
Dim w As Object
For Each w In sh.Windows
If (TypeOf w Is InternetExplorer) And (w.LocationURL = targetURL) Then
Set GetIEObject = w
Exit For
End If
Next
End Function
でie.LocationURL = ""でエラーが出るのですが、booleanだがらでしょうか?
290デフォルトの名無しさん (ワッチョイ 7f02-elwi)
2020/01/11(土) 12:56:17.13ID:0zjnxXo90 >>289
参照設定してないんちゃう
参照設定してないんちゃう
291デフォルトの名無しさん (ワッチョイ df91-88rQ)
2020/01/11(土) 12:58:17.36ID:vlDYQNOj0 何にも分かってないバカが多い。
汎用言語は正に競合だらけだからこそ、VBAの優位性が理解出来ない。
VBAの対象となってるのは他言語じゃゴミしか出来ない。
今後、TSで同じようなことが出来るならTSに移って行くだけのこと。
汎用言語は正に競合だらけだからこそ、VBAの優位性が理解出来ない。
VBAの対象となってるのは他言語じゃゴミしか出来ない。
今後、TSで同じようなことが出来るならTSに移って行くだけのこと。
292デフォルトの名無しさん (ドコグロ MM7f-qx2z)
2020/01/11(土) 13:10:09.62ID:CiEu/gQJM293デフォルトの名無しさん (ワッチョイ df91-88rQ)
2020/01/11(土) 13:31:11.90ID:vlDYQNOj0 >>289
そもそも、これVBAのコードなの?
なんか、初心者がコピペしたんじゃないの?
個人的に間違っちゃいないけど気になるのは、InternetExplorerで宣言してるのにCreateObject使ってる所。
間違ってると思うのはTypeOf。
VBAでこんな単語使ってるの初めて見た。
構文的にこの部分でエラーにならないのにびっくりした。
どちらにしろGetIEObjectでieが空っぽで帰ってる。
そもそも、これVBAのコードなの?
なんか、初心者がコピペしたんじゃないの?
個人的に間違っちゃいないけど気になるのは、InternetExplorerで宣言してるのにCreateObject使ってる所。
間違ってると思うのはTypeOf。
VBAでこんな単語使ってるの初めて見た。
構文的にこの部分でエラーにならないのにびっくりした。
どちらにしろGetIEObjectでieが空っぽで帰ってる。
294デフォルトの名無しさん (ワッチョイ df91-88rQ)
2020/01/11(土) 13:37:40.62ID:vlDYQNOj0 一応言っておくがTypeOf自体が間違いじゃない。
こういう単語を使ったコードもあり得る。
でも自分は見たこと無いし、今回のコードもここが間違ってる。
こういう単語を使ったコードもあり得る。
でも自分は見たこと無いし、今回のコードもここが間違ってる。
295デフォルトの名無しさん (ワッチョイ df2f-JQ6m)
2020/01/11(土) 14:02:25.84ID:6iu6Iqm10 >>293-294
いや、コード的には間違ってない
>GetIEObjectでieが空っぽで帰ってる
のは間違いないけど、このコードが正しく動く前提として
IEで指定されたURLが開いてる必要があるだけ
まあ指定URLが開いていたら、下のIFがスルーされるから
示された部分だけでは何がしたいコードがよくわからんが
いや、コード的には間違ってない
>GetIEObjectでieが空っぽで帰ってる
のは間違いないけど、このコードが正しく動く前提として
IEで指定されたURLが開いてる必要があるだけ
まあ指定URLが開いていたら、下のIFがスルーされるから
示された部分だけでは何がしたいコードがよくわからんが
296デフォルトの名無しさん (ワッチョイ df2f-JQ6m)
2020/01/11(土) 14:13:44.58ID:6iu6Iqm10 一応Win10の365で動くか試したみた結果ね
つか気になってちょっと調べてみたけど
TypeOf って日本語ドキュメントに記載ないっぽいな
VBAのバージョンとかで使えないかもしれん
なんにせよShellでIE取得して操作とかお勧めしかねるけどな
つか気になってちょっと調べてみたけど
TypeOf って日本語ドキュメントに記載ないっぽいな
VBAのバージョンとかで使えないかもしれん
なんにせよShellでIE取得して操作とかお勧めしかねるけどな
297デフォルトの名無しさん (アウアウウー Saa3-rY/a)
2020/01/11(土) 16:02:20.96ID:35/vo8rZa 289です。
>> 292
すみません、エラー内容は「オブジェクト変数または With ブロック変数が設定されていません」です。
>> 293
Excel VBAでクローリング&スクレイピング(五十嵐貴之著)のP137に書かれているコードなのですが。
余りよくないのでしょうか。
>> 292
すみません、エラー内容は「オブジェクト変数または With ブロック変数が設定されていません」です。
>> 293
Excel VBAでクローリング&スクレイピング(五十嵐貴之著)のP137に書かれているコードなのですが。
余りよくないのでしょうか。
298デフォルトの名無しさん (ワッチョイ 7f01-qx2z)
2020/01/11(土) 16:36:52.33ID:AmOO0hUd0299デフォルトの名無しさん (ワッチョイ df01-qx2z)
2020/01/11(土) 16:57:09.64ID:Wvm4dwrk0 北海道のグラサンスーパーハゲザーはここにはこないのー?
300デフォルトの名無しさん (ワッチョイ df2d-Zuld)
2020/01/11(土) 18:06:59.10ID:mnvMO3uc0 キタ━━━━。゚+.ヽ(´∀`*)ノ ゚+.゚━━━━!
301デフォルトの名無しさん (ワッチョイ df40-mnsv)
2020/01/12(日) 10:23:37.27ID:GxqlSy4l0 >>298
そもそもShellWindowsオブジェクトはイテレータでIEオブジェクトを渡してるから型判定自体不要
修正版
Sub TableControl()
Const targetURL$ = "http://www.ikachi.org/sample/sample10.html"
Dim ie As InternetExplorer: Set ie = GetIEObject(targetURL)
If ie Is Nothing Then MsgBox "Plz Open the Web page": Exit Sub
'残りのコード
End Sub
Public Function GetIEObject(ByVal targetURL As String) As InternetExplorer
For Each GetIEObject In CreateObject("Shell.Application").Windows
If GetIEObject.LocationURL Like targetURL Then Exit Function
Next
Set GetIEObject = Nothing
End Function
久々に書いたから変な部分あるかもしれないが、これで一応MsgBoxは開く
個人的には、こんなややこしい事せずに普通にVBAで開いた方が確実だと思う
そもそもShellWindowsオブジェクトはイテレータでIEオブジェクトを渡してるから型判定自体不要
修正版
Sub TableControl()
Const targetURL$ = "http://www.ikachi.org/sample/sample10.html"
Dim ie As InternetExplorer: Set ie = GetIEObject(targetURL)
If ie Is Nothing Then MsgBox "Plz Open the Web page": Exit Sub
'残りのコード
End Sub
Public Function GetIEObject(ByVal targetURL As String) As InternetExplorer
For Each GetIEObject In CreateObject("Shell.Application").Windows
If GetIEObject.LocationURL Like targetURL Then Exit Function
Next
Set GetIEObject = Nothing
End Function
久々に書いたから変な部分あるかもしれないが、これで一応MsgBoxは開く
個人的には、こんなややこしい事せずに普通にVBAで開いた方が確実だと思う
302デフォルトの名無しさん (ワッチョイ 7fa3-qRB+)
2020/01/13(月) 12:47:26.86ID:Jh+AJgi90 AndAlsoってないんだっけ?
303デフォルトの名無しさん (ワッチョイ 7f01-qx2z)
2020/01/13(月) 12:51:11.64ID:nlvLw0Pz0 AndAlsoやOrElseはVB.NET
もうVB.NETでもいいからExcelに載せろよとは思う
もうVB.NETでもいいからExcelに載せろよとは思う
304デフォルトの名無しさん (アウアウエー Sa7f-G18V)
2020/01/13(月) 15:28:45.56ID:/UClz5Bsa はいネトウヨ論破wwww
現実という劇薬を投与されて憤死したなwwwww
現実という劇薬を投与されて憤死したなwwwww
305デフォルトの名無しさん (アウアウエー Sa7f-G18V)
2020/01/13(月) 15:29:12.31ID:/UClz5Bsa 誤爆したわ
306デフォルトの名無しさん (ワッチョイ 7f42-Hp8P)
2020/01/13(月) 15:35:18.58ID:v1ymyhJf0 イラン「誤爆した」
307デフォルトの名無しさん (アウアウウー Saa3-alJZ)
2020/01/13(月) 18:49:02.06ID:QiYXelOBa308デフォルトの名無しさん (ワッチョイ 7fa3-qRB+)
2020/01/14(火) 03:53:35.18ID:D4OVEYsz0 >>303
短絡評価ぇ…
短絡評価ぇ…
309デフォルトの名無しさん (ワッチョイ a9f8-otum)
2020/01/15(水) 09:32:44.41ID:8JJ3bs+B0 基本的な事ですいません。
ActiveWorkbook.SaveAs Filename:=Cells(2, 36) & yyyy & "年" & mm & "月" & dd & "日" & ".xlsm"
セル内の文章 と日付でセーブする機能を盛り込んでいます。
実行時ファイル名が変わってエラー無く、VBAが動き続けているのですが、
saveするフォルダ内に該当のエクセルファイルそのものが見当たりません。
見かけ上の問題だけか?と思い、停止してフォルダを検索しましたがエクセルファイルはありませんでした。
ActiveWorkbook.SaveAs Filenameというのは、新しく名前を付けて保存なので、中身はともかく実行されたらエクセルファイルは生成されますよね?
ActiveWorkbook.SaveAs Filename:=Cells(2, 36) & yyyy & "年" & mm & "月" & dd & "日" & ".xlsm"
セル内の文章 と日付でセーブする機能を盛り込んでいます。
実行時ファイル名が変わってエラー無く、VBAが動き続けているのですが、
saveするフォルダ内に該当のエクセルファイルそのものが見当たりません。
見かけ上の問題だけか?と思い、停止してフォルダを検索しましたがエクセルファイルはありませんでした。
ActiveWorkbook.SaveAs Filenameというのは、新しく名前を付けて保存なので、中身はともかく実行されたらエクセルファイルは生成されますよね?
310309 (ワッチョイ a9f8-otum)
2020/01/15(水) 09:49:48.07ID:8JJ3bs+B0 すいません。自己解決しました。
指定フォルダにsaveする記述がズレていただけでした。
指定フォルダにsaveする記述がズレていただけでした。
311デフォルトの名無しさん (ワッチョイ f901-mQF2)
2020/01/15(水) 19:10:48.65ID:WqIuLPSu0 あなたのハゲにサクセスしたい
312デフォルトの名無しさん (ワッチョイ 412d-DNSW)
2020/01/15(水) 21:59:00.70ID:h+QybiOr0 キタ━━━━。゚+.ヽ(´∀`*)ノ ゚+.゚━━━━!
313デフォルトの名無しさん (ワッチョイ a9cc-0hUg)
2020/01/16(木) 21:35:54.79ID:1+aO/gYN0 Excel2019で、
.ActiveWorkbook.SaveAs FileName:=FilePass, FileFormat:=51
ってやると、
'Book1' の変更内容を保存しますか?
ってダイアログが出て保存できないね。
どうしたらいいだろう?お手上げです。
.ActiveWorkbook.SaveAs FileName:=FilePass, FileFormat:=51
ってやると、
'Book1' の変更内容を保存しますか?
ってダイアログが出て保存できないね。
どうしたらいいだろう?お手上げです。
314デフォルトの名無しさん (ワッチョイ 8d7c-iIoL)
2020/01/16(木) 21:46:08.50ID:0+Ijnx150 「はい」押したらいいんでないの
315デフォルトの名無しさん (ワッチョイ a9cc-0hUg)
2020/01/16(木) 21:51:01.14ID:1+aO/gYN0316デフォルトの名無しさん (ワッチョイ 8d7c-iIoL)
2020/01/16(木) 21:56:43.44ID:0+Ijnx150 じゃあいいえ押せば
317デフォルトの名無しさん (ワッチョイ 25ce-A78j)
2020/01/16(木) 22:25:40.00ID:LhzC5ZEG0 >>315
Application.DisplayAlerts = False
Application.DisplayAlerts = False
318デフォルトの名無しさん (ワッチョイ c58a-KiTk)
2020/01/16(木) 23:46:15.85ID:zIX3nnAn0 そんなの出たっけ?
CSVだとしつこく聞いてきたような記憶があるが。
CSVだとしつこく聞いてきたような記憶があるが。
319デフォルトの名無しさん (ワッチョイ 8d7c-iIoL)
2020/01/16(木) 23:49:24.36ID:0+Ijnx150 保存せず閉じる時に出るメッセージかな
320デフォルトの名無しさん (ワントンキン MM52-j+sJ)
2020/01/17(金) 12:59:57.34ID:Os8PeLdnM321デフォルトの名無しさん (ワッチョイ c5da-HLSl)
2020/01/17(金) 19:34:06.53ID:1AQmX/Lf0 間に何かのイベントが反応して、何も変更してないのに、変更したと見なされちゃってるとか?
322デフォルトの名無しさん (ワッチョイ 25ce-A78j)
2020/01/17(金) 19:48:23.52ID:hML99gYW0 揮発性関数を使ってるとファイルをオープンしただけで変更したと見なされる
323313 (ワッチョイ a9cc-0hUg)
2020/01/17(金) 23:26:14.60ID:v8gb16450324デフォルトの名無しさん (ワッチョイ c5da-HLSl)
2020/01/18(土) 00:21:02.59ID:6wqE9Oqx0 C#ってウソだろ?
VBAの構文しか見えないが。
今はそんなことになってるのか。
VBAの構文しか見えないが。
今はそんなことになってるのか。
325デフォルトの名無しさん (ワッチョイ bd5f-0x+Z)
2020/01/18(土) 00:37:29.12ID:vFXF5Tw00 どうせC#のコード内でExcelを呼び出してるんだろうね。
326デフォルトの名無しさん (ワッチョイ 8d7c-iIoL)
2020/01/18(土) 01:13:27.38ID:kT6CUwPp0 >>323
savedは
savedは
327デフォルトの名無しさん (ワッチョイ 0259-0gFD)
2020/01/18(土) 03:37:25.77ID:QBPyK2Ke0 参照設定見直し
328デフォルトの名無しさん (ワッチョイ f901-mQF2)
2020/01/18(土) 04:11:21.84ID:SGizdn1y0 競馬やる奴、毛根をハーゲットに取り込む方法教えます
329デフォルトの名無しさん (ワッチョイ a9b0-4vOW)
2020/01/18(土) 06:07:28.94ID:Kncf6iS90 自作データベースをエクセルでも管理できるように
簡易CSV形式(つまりカンマで区切っただけ)のテキスト出力できるようにしたんだけど
文字コードがUTF-8だと自作→エクセルなら大丈夫なんだが
エクセル→自作に戻すと文字化けする。
エクセルのCSVってShift_JISでしか出せないの?
簡易CSV形式(つまりカンマで区切っただけ)のテキスト出力できるようにしたんだけど
文字コードがUTF-8だと自作→エクセルなら大丈夫なんだが
エクセル→自作に戻すと文字化けする。
エクセルのCSVってShift_JISでしか出せないの?
330デフォルトの名無しさん (ワッチョイ cdca-6zBS)
2020/01/18(土) 06:15:01.10ID:G5wl/6H20 UTF-8形式のテキストファイルに書き込む
http://officetanaka.net/excel/vba/file/file11.htm
http://officetanaka.net/excel/vba/file/file11.htm
331デフォルトの名無しさん (ワッチョイ a9b0-4vOW)
2020/01/18(土) 06:49:02.70ID:Kncf6iS90 あー最新版ならファイルメニューにあるんだな・・・
おれの2010だわ
ありがとう
おれの2010だわ
ありがとう
332313 (ワッチョイ a9cc-0hUg)
2020/01/18(土) 20:48:30.71ID:GU2jl3IU0333デフォルトの名無しさん (ワッチョイ 8d7c-iIoL)
2020/01/18(土) 22:42:14.81ID:kT6CUwPp0 >>332
残ってるのは自分がちゃんと解放してないからですな…
残ってるのは自分がちゃんと解放してないからですな…
334デフォルトの名無しさん (ワッチョイ c5da-6zBS)
2020/01/18(土) 23:05:19.33ID:6wqE9Oqx0 ADO使う時、VBAだとExcel8.0も12.0もいけるのに、VBSだと8.0しか使えない。
12.0を使おうとすると、プロバイダがないだのISAMがないだの言われる。
多分、VBAだと参照設定でADO2.8とか6.1を選べるけど、
VBSはCreateObjectで、自由に選べないのが原因じゃないかと思うんだけど、
具体的にdll指定する方法とか無い?
え? Accessの何とかコンポーネント入れろって?
会社のPCだから、使う人の分申請するの面倒なんだよ。
え? そもそもVBSスレじゃないだろって?
あっちは何か変なのが住み着いてるじゃん。クリボーみたいなAA貼って。
12.0を使おうとすると、プロバイダがないだのISAMがないだの言われる。
多分、VBAだと参照設定でADO2.8とか6.1を選べるけど、
VBSはCreateObjectで、自由に選べないのが原因じゃないかと思うんだけど、
具体的にdll指定する方法とか無い?
え? Accessの何とかコンポーネント入れろって?
会社のPCだから、使う人の分申請するの面倒なんだよ。
え? そもそもVBSスレじゃないだろって?
あっちは何か変なのが住み着いてるじゃん。クリボーみたいなAA貼って。
335デフォルトの名無しさん (ワッチョイ 25ce-A78j)
2020/01/18(土) 23:09:07.17ID:GBX9mo+x0 >>334
CreateObjectにバージョンまで書くだけ
CreateObjectにバージョンまで書くだけ
336デフォルトの名無しさん (ワッチョイ 0279-U231)
2020/01/18(土) 23:24:48.43ID:jJ2WRqDf0 気持ち悪いよねVBSスレ
死んでくれないかな誰とは言わないけど
死んでくれないかな誰とは言わないけど
337デフォルトの名無しさん (アウアウウー Sa05-6Lxe)
2020/01/18(土) 23:29:07.74ID:qFsoK61Ea >>332
エスケープでキャンセルするは?
エスケープでキャンセルするは?
338313 (ワッチョイ a9cc-0hUg)
2020/01/18(土) 23:44:31.92ID:GU2jl3IU0339デフォルトの名無しさん (ワッチョイ 022c-Sfrr)
2020/01/19(日) 00:23:37.04ID:qcodQ+dh0 普通、PowerShell, VBScript などで、
Excel, IE などを起動すると、プロセスが残る
プロセスを終了させるには、名前で調べて、終了させないといけないから、
名前が一致すれば、無関係のプロセスも、終了させられてしまうw
Excel, IE などを起動すると、プロセスが残る
プロセスを終了させるには、名前で調べて、終了させないといけないから、
名前が一致すれば、無関係のプロセスも、終了させられてしまうw
340デフォルトの名無しさん (ワッチョイ 022c-Sfrr)
2020/01/19(日) 00:27:32.31ID:qcodQ+dh0341デフォルトの名無しさん (ワッチョイ 7d35-A78j)
2020/01/19(日) 00:31:47.67ID:/KlymybO0 >VBSで、5ch をスクレイピングしたりもする
スキルとしては下の下なんだが
スキルとしては下の下なんだが
342デフォルトの名無しさん (ワッチョイ f901-mQF2)
2020/01/19(日) 01:08:44.67ID:jaXQhxpp0 あなたのハゲにサクセスしたい
343デフォルトの名無しさん (ワッチョイ 25a2-6zBS)
2020/01/19(日) 01:12:37.02ID:i5FWYGKN0 でもまともなエディタないのにスクレイピングできるってちょっとすごいと思うわ
344デフォルトの名無しさん (ワッチョイ 7d35-A78j)
2020/01/19(日) 01:28:51.78ID:/KlymybO0 >>343
そう言われてみると確かに凄い!
そう言われてみると確かに凄い!
345デフォルトの名無しさん (ワッチョイ c5da-6zBS)
2020/01/19(日) 14:51:45.20ID:SjdpeY/L0 >>335
CreateObject("ADODB.Connection.6.1")も、
CreateObject("new:{B691E011-1797-432E-907A-4D8C69339129}")もダメだったわ。
ActiveXコンポーネントを作成出来ませんって。
何がダメ?
CreateObject("ADODB.Connection.6.1")も、
CreateObject("new:{B691E011-1797-432E-907A-4D8C69339129}")もダメだったわ。
ActiveXコンポーネントを作成出来ませんって。
何がダメ?
346デフォルトの名無しさん (スプッッ Sd82-sV0n)
2020/01/19(日) 15:15:57.62ID:aNwanbWxd もういい加減IE辞めたら?
あんたの会社セキュリティ意識なさ過ぎじゃない
大丈夫なの?表の仕事はしてない会社なのか
あんたの会社セキュリティ意識なさ過ぎじゃない
大丈夫なの?表の仕事はしてない会社なのか
347デフォルトの名無しさん (ドコグロ MMca-mgaX)
2020/01/19(日) 15:59:41.27ID:GJyhHQJKM VBAを捨てられない組織がIEを捨てられるわけがないだろう
348デフォルトの名無しさん (オイコラミネオ MM29-YUdL)
2020/01/19(日) 16:26:59.69ID:Z4m11qD6M >>345
ADODB.? てのは無いんだっけ…
ADODB.? てのは無いんだっけ…
349デフォルトの名無しさん (アウアウウー Sa05-6Lxe)
2020/01/19(日) 18:16:17.91ID:ABvwSa+Qa 上司が無能
350デフォルトの名無しさん (スップ Sd82-efZq)
2020/01/19(日) 20:13:14.65ID:ex79Jb14d351デフォルトの名無しさん (ワッチョイ c5da-6zBS)
2020/01/19(日) 20:55:51.63ID:SjdpeY/L0352デフォルトの名無しさん (スプッッ Sd82-sV0n)
2020/01/19(日) 20:56:52.40ID:aNwanbWxd ActiveX
353デフォルトの名無しさん (ワッチョイ 869f-6zBS)
2020/01/19(日) 22:36:56.65ID:nXr7UDmZ0 >>106 これと同じ人なのですが、レコード番号が不正と出ます。
セルの指定が上手くいってないのだろうとはわかりますが、どうしたらいいかわかりません
すごい初歩的なとことで躓いている気がするのですがご教授ねがいます
Sub Test_Open()
Dim a As Byte
Dim strFilePath As String
strFilePath = ActiveWorkbook.Path & "\data.bin"
Open strFilePath For Binary As #1
Dim i As Integer
For i = 1 To 6
Put #1, Cells(i, 1), a
Next i
Close #1
End Sub
セルの指定が上手くいってないのだろうとはわかりますが、どうしたらいいかわかりません
すごい初歩的なとことで躓いている気がするのですがご教授ねがいます
Sub Test_Open()
Dim a As Byte
Dim strFilePath As String
strFilePath = ActiveWorkbook.Path & "\data.bin"
Open strFilePath For Binary As #1
Dim i As Integer
For i = 1 To 6
Put #1, Cells(i, 1), a
Next i
Close #1
End Sub
354デフォルトの名無しさん (ワッチョイ 25ce-A78j)
2020/01/19(日) 23:04:08.22ID:PQm/OLWJ0 >>353
For i = 1 To 6
a = Cells(i, 1)
Put #1, , a
Next
For i = 1 To 6
a = Cells(i, 1)
Put #1, , a
Next
355デフォルトの名無しさん (ワッチョイ 869f-6zBS)
2020/01/19(日) 23:34:15.88ID:nXr7UDmZ0 ありがとうございます! やっと一歩進めました
ただ最終的に、ある行の1〜数万行のデータをその数値のままバイナリデータに変換したいので
現在だと 17 なんかは 11 00 のように入力されてしまうことと
セルの Cells(i, 1) 数値の方を変更すると型の不一致と出てくることは何が原因でしょうか
小さすぎるかと思って As Byte を As Long にしてもダメでした
ただ最終的に、ある行の1〜数万行のデータをその数値のままバイナリデータに変換したいので
現在だと 17 なんかは 11 00 のように入力されてしまうことと
セルの Cells(i, 1) 数値の方を変更すると型の不一致と出てくることは何が原因でしょうか
小さすぎるかと思って As Byte を As Long にしてもダメでした
356デフォルトの名無しさん (ワッチョイ 8d7c-iIoL)
2020/01/19(日) 23:40:29.46ID:RvM5FchK0 型の範囲よく判ってないならちゃんと調べた方がいいよ
357デフォルトの名無しさん (ワッチョイ f901-mQF2)
2020/01/19(日) 23:55:33.87ID:jaXQhxpp0 あなたのハゲにサクセスしたい
358デフォルトの名無しさん (ワッチョイ 869f-6zBS)
2020/01/20(月) 00:40:12.58ID:V4ZsTE2o0 型の範囲……調べてもそう難しくなさそうなのに何故か不一致の時は不一致に
ただ、いろいろ試していたら行の指定や範囲の指定はなんとかなったんですが、
やっぱり数値が16進に置き換わってしまいます
Dim a As Byte をStringとかに変えると まあ文字列になってしまうし
ただ、いろいろ試していたら行の指定や範囲の指定はなんとかなったんですが、
やっぱり数値が16進に置き換わってしまいます
Dim a As Byte をStringとかに変えると まあ文字列になってしまうし
359デフォルトの名無しさん (ワッチョイ 25ce-A78j)
2020/01/20(月) 01:56:26.20ID:fAyYAtJL0 >>358
セルに入ってる数字は最大いくつ(何バイト分)なの?
セルに入ってる数字は最大いくつ(何バイト分)なの?
360デフォルトの名無しさん (ワッチョイ 25ce-A78j)
2020/01/20(月) 02:04:25.58ID:fAyYAtJL0 もしかして、やりたいのはこういうことか?
Sub Test_Open()
Dim a As Integer
Dim strFilePath As String
Dim i As Integer
strFilePath = ActiveWorkbook.Path & "\data.bin"
Open strFilePath For Binary As #1
For i = 1 To 6
a = Val("&H" & Cells(i, 1).Text)
Put #1, , a
Next
Close #1
End Sub
Sub Test_Open()
Dim a As Integer
Dim strFilePath As String
Dim i As Integer
strFilePath = ActiveWorkbook.Path & "\data.bin"
Open strFilePath For Binary As #1
For i = 1 To 6
a = Val("&H" & Cells(i, 1).Text)
Put #1, , a
Next
Close #1
End Sub
361デフォルトの名無しさん (ワッチョイ 869f-6zBS)
2020/01/20(月) 08:18:58.19ID:V4ZsTE2o0 お手間をかけます
セルの値は00〜FFの範囲で セルの見た目そのままをバイナリに落とし込むことを目的としています
例えば書いていただいた >>360 では
セルの値が 01 だと書き出したほうは 01 00 となるので
後ろの 00 は省いて書き込みたいと考えています
セルの値は00〜FFの範囲で セルの見た目そのままをバイナリに落とし込むことを目的としています
例えば書いていただいた >>360 では
セルの値が 01 だと書き出したほうは 01 00 となるので
後ろの 00 は省いて書き込みたいと考えています
362デフォルトの名無しさん (ワッチョイ 25ce-A78j)
2020/01/20(月) 11:15:52.64ID:fAyYAtJL0363デフォルトの名無しさん (ワッチョイ 869f-6zBS)
2020/01/20(月) 12:30:47.41ID:V4ZsTE2o0 ああ、出来ました!
i の範囲もLongにしたら数十万も対応できたので思っていたのが完成しました
長々と丁寧にお付き合いいただき、ありがとうございます!
i の範囲もLongにしたら数十万も対応できたので思っていたのが完成しました
長々と丁寧にお付き合いいただき、ありがとうございます!
364デフォルトの名無しさん (アウアウウー Sa05-6Lxe)
2020/01/21(火) 16:05:59.09ID:v6wThH4Xa >>363
エクセルの最後までいくとえらーでるんじゃね
エクセルの最後までいくとえらーでるんじゃね
365デフォルトの名無しさん (ワッチョイ 869f-6zBS)
2020/01/21(火) 18:50:01.59ID:oJaN0VWt0 実行するとめっちゃ重くなり、一度エラーがありましたが、
その時以外は、成功しています
その時以外は、成功しています
366デフォルトの名無しさん (ワッチョイ 6ef2-JESV)
2020/01/21(火) 18:53:25.76ID:G9onwGKx0 話しは変わりますが、”Microsoft Office Desktop Apps” と表示されてる方がデスクトップ版じゃなくてストアアプリ版だって本当ですか?
367デフォルトの名無しさん (ブーイモ MM6b-FqHH)
2020/01/22(水) 18:27:54.50ID:qTZNd94bM 一つのシート上の複数セルに関数が設定されています。
すべてのセルの関数の処理が一つ一つ処理されていき、最終的にすべてのセルの更新処理が終わったときに、あるマクロを動かしたいのですが、どうやればいいのでしょうか?
すべてのセルの関数の処理が一つ一つ処理されていき、最終的にすべてのセルの更新処理が終わったときに、あるマクロを動かしたいのですが、どうやればいいのでしょうか?
368デフォルトの名無しさん (ワッチョイ e7da-9rwV)
2020/01/22(水) 18:51:55.87ID:dkHhF3U80 もはやExcel大喜利だな。
369デフォルトの名無しさん (ワッチョイ c701-CT20)
2020/01/22(水) 19:00:23.17ID:BHh+OjnL0 ここには北海道のスーパーハゲザーはこないのー?
370デフォルトの名無しさん (ワッチョイ 4740-OdrL)
2020/01/22(水) 19:20:56.10ID:0xXxIRDp0 >>367
セルの関数を指定のタイミングと順番で処理したいってこと?
関数の入ったシートのEnableCalculationプロパティをFalseにして、
計算したい関数の入ったRangeのCalculateメソッドを順次呼べば一個ずつ処理できる
それで最後の関数の計算が済んだ後にマクロを実行するとか
一応関数の計算終了時に動かすマクロはシートのCalculateイベントに書いても実行できるけど、
シート全体が対象だからCalculateメソッドが走るたびに発火するから使えないと思う
セルの関数を指定のタイミングと順番で処理したいってこと?
関数の入ったシートのEnableCalculationプロパティをFalseにして、
計算したい関数の入ったRangeのCalculateメソッドを順次呼べば一個ずつ処理できる
それで最後の関数の計算が済んだ後にマクロを実行するとか
一応関数の計算終了時に動かすマクロはシートのCalculateイベントに書いても実行できるけど、
シート全体が対象だからCalculateメソッドが走るたびに発火するから使えないと思う
371デフォルトの名無しさん (ワッチョイ a761-FqHH)
2020/01/22(水) 21:36:24.98ID:ASOe66pr0 >>370
ありがとう
試してみます
自分で作った関数を引数変えて500セルくらいが呼び出す状態なんです。
んで、かなり遅くて、全部が終わるまで5分位待つことになるので、それではつかいものにならないので、高速化を図りたいのです。
ありがとう
試してみます
自分で作った関数を引数変えて500セルくらいが呼び出す状態なんです。
んで、かなり遅くて、全部が終わるまで5分位待つことになるので、それではつかいものにならないので、高速化を図りたいのです。
372デフォルトの名無しさん (アウアウエー Sa1f-Jq7D)
2020/01/22(水) 21:45:06.72ID:NTh6ute5a そろそろ python とか考えた方がいいデータ量だな
373デフォルトの名無しさん (スプッッ Sd1f-Jq7D)
2020/01/22(水) 22:07:39.73ID:u4WICNHad >>371
そういうのは、いちいちワークシートとか数式を使わずに、全部配列で処理すれば5秒で終わるよ
そういうのは、いちいちワークシートとか数式を使わずに、全部配列で処理すれば5秒で終わるよ
374デフォルトの名無しさん (ワッチョイ e7da-9rwV)
2020/01/22(水) 23:41:11.62ID:dkHhF3U80 そう思っていた時代がありました。
セルに数式とかダセェぜ、これからはSQL
セルに数式とかダセェぜ、これからはSQL
375デフォルトの名無しさん (ワッチョイ e7da-9rwV)
2020/01/22(水) 23:42:00.02ID:dkHhF3U80 だ、とか思って、DSUMのあまりの遅さに撃沈。
376デフォルトの名無しさん (アークセー Sx7b-A/Ym)
2020/01/23(木) 04:03:57.39ID:7AuSNAnix 500セルに対するETL処理だからPowerQueryでインメモリ処理すれば良いのでは
377デフォルトの名無しさん (スップ Sdff-1dWi)
2020/01/23(木) 12:47:14.66ID:TvBTmyI8d378デフォルトの名無しさん (スップ Sdff-1dWi)
2020/01/23(木) 12:48:15.57ID:TvBTmyI8d というか、普通は>>373だろ。
379デフォルトの名無しさん (ワッチョイ e78a-yq/U)
2020/01/23(木) 23:18:33.64ID:020LoGP80 dsumよりサブクエリの方が速いのが納得いかん。
あんな遅いの、何であるんだ?
俺の使い方が下手なだけで、速く使える人もいるのか?
あんな遅いの、何であるんだ?
俺の使い方が下手なだけで、速く使える人もいるのか?
380デフォルトの名無しさん (ワッチョイ 2735-Jq7D)
2020/01/24(金) 07:02:09.49ID:3ouAvGwr0381デフォルトの名無しさん (ワッチョイ c701-CT20)
2020/01/24(金) 10:44:07.60ID:H2KGzjxR0 あなたのハゲにサクセスしたい
382デフォルトの名無しさん (アウアウエー Sa1f-9rwV)
2020/01/25(土) 05:46:11.97ID:q4rx//wXa 新聞配達しながらプログラミングのこと考えてたんだが
オブジェクト指向こそプログラミング的発想の1丁目1番地で
オブジェクト指向が解らないやつは3流のクズってことで結論出ました。
オブジェクト指向こそプログラミング的発想の1丁目1番地で
オブジェクト指向が解らないやつは3流のクズってことで結論出ました。
383デフォルトの名無しさん (ワッチョイ 2735-Jq7D)
2020/01/25(土) 07:10:00.59ID:hvTbtP8U0 >>382
高評価
・プログラミングできるのに新聞配達?何も分かっていないだろうと思わせる
・コンビニ店員ではなく、新聞配達というというのも良いチョイス。考え事ができそうなイメージがある
・ただ惜しいのは「プログラミング的発想」。プログラミング的発想が原初のプログラミングを指すならさすがに手続き型になる
・恐らく元は別のコピペであることは容易に推測できる
コピペにしろ、なかなか良いチョイスではあるが、詰めが甘い
高評価
・プログラミングできるのに新聞配達?何も分かっていないだろうと思わせる
・コンビニ店員ではなく、新聞配達というというのも良いチョイス。考え事ができそうなイメージがある
・ただ惜しいのは「プログラミング的発想」。プログラミング的発想が原初のプログラミングを指すならさすがに手続き型になる
・恐らく元は別のコピペであることは容易に推測できる
コピペにしろ、なかなか良いチョイスではあるが、詰めが甘い
384デフォルトの名無しさん (ワッチョイ 8701-1Wqm)
2020/01/26(日) 10:47:31.88ID:ygprKbmU0 転記元の最終行を取得するところで1004エラーがでる
Dim fl As String
Dim WBo, Wbd As Workbook
Dim a As String
Dim ex As String
Dim syamei As String
Sub 変換ファイル選択()
syamei = Range("B3")
fl = Application.GetOpenFilename
ThisWorkbook.Worksheets(1).Range("C1") = fl
Set WBo = Workbooks.Open(fl)
MsgBox "出力先を選択"
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
a = .SelectedItems(1)
End With
With ThisWorkbook.Worksheets(1)
ex = a & "\" & .Range("B3") & "_" & Year(Now) & "_" & Month(Now) & ".xlsx"
.Range("C2") = ex
.Activate
End With
Set Wbd = Workbooks.Add
Wbd.SaveAs ex
ThisWorkbook.Worksheets(2).Activate
ActiveSheet.Copy Wbd.Worksheets(1)
ThisWorkbook.Worksheets(1).Activate
End Sub
Dim fl As String
Dim WBo, Wbd As Workbook
Dim a As String
Dim ex As String
Dim syamei As String
Sub 変換ファイル選択()
syamei = Range("B3")
fl = Application.GetOpenFilename
ThisWorkbook.Worksheets(1).Range("C1") = fl
Set WBo = Workbooks.Open(fl)
MsgBox "出力先を選択"
With Application.FileDialog(msoFileDialogFolderPicker)
.Show
a = .SelectedItems(1)
End With
With ThisWorkbook.Worksheets(1)
ex = a & "\" & .Range("B3") & "_" & Year(Now) & "_" & Month(Now) & ".xlsx"
.Range("C2") = ex
.Activate
End With
Set Wbd = Workbooks.Add
Wbd.SaveAs ex
ThisWorkbook.Worksheets(2).Activate
ActiveSheet.Copy Wbd.Worksheets(1)
ThisWorkbook.Worksheets(1).Activate
End Sub
385デフォルトの名無しさん (ワッチョイ 8701-1Wqm)
2020/01/26(日) 10:47:38.48ID:ygprKbmU0 Sub 変換処理()
Dim Wsd As Worksheet '請求書
Dim Wso As Worksheet '転記元
Dim i As Long 'ForNext用
Dim j As Long
Dim ko As Long '個数
Dim Kohani As Range
Dim fnkohani As Range
Set Wsd = Wbd.Worksheets(1)
Set Wso = WBo.Worksheets(1)
Const Dhin = 1
Const Dtan = 2
Const Dko = 3
Const Dkin = 4
'転記元定数
Const Ohin = 4
Const Otan = 3
Wsd.Activate
With Wso
Range("E3") = Year(Now) & "/" & Month(Now)
j = 7
For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(i, 1) = syamei Then
MsgBox syamei
End If
Next i
End With
End Sub
Dim Wsd As Worksheet '請求書
Dim Wso As Worksheet '転記元
Dim i As Long 'ForNext用
Dim j As Long
Dim ko As Long '個数
Dim Kohani As Range
Dim fnkohani As Range
Set Wsd = Wbd.Worksheets(1)
Set Wso = WBo.Worksheets(1)
Const Dhin = 1
Const Dtan = 2
Const Dko = 3
Const Dkin = 4
'転記元定数
Const Ohin = 4
Const Otan = 3
Wsd.Activate
With Wso
Range("E3") = Year(Now) & "/" & Month(Now)
j = 7
For i = 2 To .Cells(Rows.Count, 1).End(xlUp).Row
If .Cells(i, 1) = syamei Then
MsgBox syamei
End If
Next i
End With
End Sub
386デフォルトの名無しさん (ワッチョイ 8701-1Wqm)
2020/01/26(日) 10:48:01.26ID:ygprKbmU0 for i = のところね、なんで?
387デフォルトの名無しさん (ワッチョイ 2735-Jq7D)
2020/01/26(日) 11:12:02.47ID:byZzTIzc0388デフォルトの名無しさん (ワッチョイ e7ce-Jq7D)
2020/01/26(日) 11:21:15.83ID:vsWc/GLT0389デフォルトの名無しさん (ワッチョイ 47ad-FkkX)
2020/01/26(日) 11:33:50.54ID:JYk4qqrF0 Excel VBA初心者です。
やりたいことに似ているサンプルを読み解きながら
勉強中です。
初歩的なことで申し訳ないのですが、ご教示いただければ
ありがたいです。
クローズメソッドの説明を
https://www.tipsfound.com/vba/11006
読んででいたのですが、説明文で
Call wb.Close(SaveChanges:=True) ' 変更を保存して閉じる
Call wb.Close(SaveChanges:=False) ' 保存しないで閉じる
というのが出てきました。
Call と付いている意味がわからず、call について調べてみたの
ですが、プロシージャの呼び出しについての説明しか見つけられず
困っています。
どうぞよろしくお願いいたします。
やりたいことに似ているサンプルを読み解きながら
勉強中です。
初歩的なことで申し訳ないのですが、ご教示いただければ
ありがたいです。
クローズメソッドの説明を
https://www.tipsfound.com/vba/11006
読んででいたのですが、説明文で
Call wb.Close(SaveChanges:=True) ' 変更を保存して閉じる
Call wb.Close(SaveChanges:=False) ' 保存しないで閉じる
というのが出てきました。
Call と付いている意味がわからず、call について調べてみたの
ですが、プロシージャの呼び出しについての説明しか見つけられず
困っています。
どうぞよろしくお願いいたします。
390デフォルトの名無しさん (アークセー Sx7b-A/Ym)
2020/01/26(日) 12:13:28.33ID:QZpkq/o4x >>389
Callは引数に指定したプロジージャに制御を渡して呼び出すVB6のステートメントで使用するキーワードだよ
CallキーワードはVBAの文法上省略可能
Callを省略しない場合、呼び出すステートメントに渡す引数__ argumentlistは括弧括り・カンマ区切りの形式にしないといけない
つまり以下の二つの命令はどちらもCallステートメントで、同じ動作・効果をする
wb.Close SaveChanges:=False
Call wb.Close(SaveChanges:=False)
Callは引数に指定したプロジージャに制御を渡して呼び出すVB6のステートメントで使用するキーワードだよ
CallキーワードはVBAの文法上省略可能
Callを省略しない場合、呼び出すステートメントに渡す引数__ argumentlistは括弧括り・カンマ区切りの形式にしないといけない
つまり以下の二つの命令はどちらもCallステートメントで、同じ動作・効果をする
wb.Close SaveChanges:=False
Call wb.Close(SaveChanges:=False)
391デフォルトの名無しさん (スッップ Sd7f-APVk)
2020/01/26(日) 12:37:50.96ID:fwxC7BLNd エクセル以外はインストール出来ないって特殊会社にこき使われてる社畜は無視してその他の人はVBAなんて覚える価値は全くないから騙されるなよ
エクセルデータを読み込んで加工するなんて簡単な事
エクセルデータを読み込んで加工するなんて簡単な事
392デフォルトの名無しさん (アークセー Sx7b-A/Ym)
2020/01/26(日) 12:49:58.68ID:QZpkq/o4x 場合によりけりだろう
Excelの読み込みができる言語ならエクセルデータの加工が可能なのは事実だが、VBAが手軽なのは間違いない
今やPower Queryの操作もVBAで行えるから、VBAを呼び出し元にして複雑なデータ加工を高速で行うことも可能になってる
Excelの読み込みができる言語ならエクセルデータの加工が可能なのは事実だが、VBAが手軽なのは間違いない
今やPower Queryの操作もVBAで行えるから、VBAを呼び出し元にして複雑なデータ加工を高速で行うことも可能になってる
393デフォルトの名無しさん (ドコグロ MM3b-muPn)
2020/01/26(日) 13:53:16.01ID:Hz+a2g+VM >>389
call つかうと引数の括弧が必須になるんだよ
使わないときは括弧つけるとエラー
そんで変数=関数(引数) みたいに返り値を取る場合も括弧が必須になる
つまりcall 使うと括弧有無の記述を統一できるんだね
call つかうと引数の括弧が必須になるんだよ
使わないときは括弧つけるとエラー
そんで変数=関数(引数) みたいに返り値を取る場合も括弧が必須になる
つまりcall 使うと括弧有無の記述を統一できるんだね
394デフォルトの名無しさん (ブーイモ MMcf-zhHs)
2020/01/26(日) 15:15:52.15ID:trXW8RYwM VBAでのPower Query操作ってクソだよね
letからinまでのステップ全体がFormulaプロパティに長い文字列として収まってるだけ
vbaの貧弱な文字列操作で弄りたくない
letからinまでのステップ全体がFormulaプロパティに長い文字列として収まってるだけ
vbaの貧弱な文字列操作で弄りたくない
395デフォルトの名無しさん (スップ Sdff-1dWi)
2020/01/26(日) 15:46:06.33ID:wbtCtzSUd396デフォルトの名無しさん (スプッッ Sd7f-APVk)
2020/01/26(日) 15:49:42.04ID:QaUqszajd データの共有や統合が出来ないのがエクセルの欠点
397デフォルトの名無しさん (アウアウエー Sa1f-Jq7D)
2020/01/26(日) 17:01:12.87ID:DD0zspUIa できるけど、もう使わないだろう
398デフォルトの名無しさん (ワッチョイ c701-CT20)
2020/01/26(日) 18:03:51.13ID:H61ob1qx0 あなたのハゲにサクセスしたい
399デフォルトの名無しさん (ワッチョイ 47ad-FkkX)
2020/01/26(日) 19:14:52.64ID:JYk4qqrF0400デフォルトの名無しさん (ワッチョイ a77c-IHvl)
2020/01/26(日) 19:24:52.26ID:trMje/ic0 >>399
ここ煽りやアンチばっかだからもっとマシな場所に混ざりに行ったほうがいいよ
ここ煽りやアンチばっかだからもっとマシな場所に混ざりに行ったほうがいいよ
401デフォルトの名無しさん (アークセー Sx7b-A/Ym)
2020/01/26(日) 22:14:31.23ID:9RxiX0DDx402デフォルトの名無しさん (ワッチョイ a78e-U9mn)
2020/01/27(月) 00:51:05.27ID:X7pesRTh0 >>399
馬鹿しかいない職場か?
馬鹿しかいない職場か?
403デフォルトの名無しさん (スプッッ Sd7f-Y2bj)
2020/01/27(月) 08:07:38.79ID:l0N1pZ88d >>399
コーディング含めて1時間あれば出来そう
けど便利屋になるのだけは避けた方がいいぞ。
今後そういう処理は全部お願いってなって、雑用みたいな仕事ばっかり来るはめになる。
プログラマーは評価されにくく、いいように使われやすいから。
コードをしっかり管理して、そうならないようにな!
コーディング含めて1時間あれば出来そう
けど便利屋になるのだけは避けた方がいいぞ。
今後そういう処理は全部お願いってなって、雑用みたいな仕事ばっかり来るはめになる。
プログラマーは評価されにくく、いいように使われやすいから。
コードをしっかり管理して、そうならないようにな!
404デフォルトの名無しさん (ワッチョイ bf02-D/Lt)
2020/01/27(月) 08:22:04.82ID:UsiT3d7U0 アホな職場上司もとい老害同僚からは
仕事減るから余計な事するな
と言われる可能性も
仕事減るから余計な事するな
と言われる可能性も
405デフォルトの名無しさん (アウアウウー Sa4b-Egc/)
2020/01/27(月) 12:05:43.13ID:+n+DvrX6a 出る杭は
406デフォルトの名無しさん (ワッチョイ e7a2-9rwV)
2020/01/27(月) 12:31:00.54ID:vcCI8B5w0 まじでそういう馬鹿上司いそうで困るな
しかも外のセミナーで自動化で人件費コストカットとか吹き込まれたら躊躇なくクビ切ってきそう
しかも外のセミナーで自動化で人件費コストカットとか吹き込まれたら躊躇なくクビ切ってきそう
407デフォルトの名無しさん (ワッチョイ 475f-9rwV)
2020/01/27(月) 19:27:17.58ID:2ZMm50820 シート上に配置したコントロール(ボタンなど)の名前を調べたり変更したりするには
どうすればよいのでしょうか
シートにたくさん画像が貼り付けてあるので、それらを一斉に消去するために
Public Sub pics_delete(sname As String)
Dim delShape As Shape
For Each delShape In Worksheets(sname).Shapes
If (delShape.Name <> "btnDelete") Then
'delShape.name = btnDelete
delShape.Delete
End If
Next
End Sub
こんな感じのコードを書いているのですが、配置したボタンの名前をワークシート上で
参照/変更することが出来ません
仕方ないので、一旦全てのシェイプが消えたあと再度ボタンを配置して、上記プログラムの
コメント部分を切り替えています
プロパティを見ても、オブジェクトとしてワークシートが選択されてしまうようで、ボタンを
選択した状態でプロパティを見てもボタンの情報が参照できません
どうすればよいのでしょうか
シートにたくさん画像が貼り付けてあるので、それらを一斉に消去するために
Public Sub pics_delete(sname As String)
Dim delShape As Shape
For Each delShape In Worksheets(sname).Shapes
If (delShape.Name <> "btnDelete") Then
'delShape.name = btnDelete
delShape.Delete
End If
Next
End Sub
こんな感じのコードを書いているのですが、配置したボタンの名前をワークシート上で
参照/変更することが出来ません
仕方ないので、一旦全てのシェイプが消えたあと再度ボタンを配置して、上記プログラムの
コメント部分を切り替えています
プロパティを見ても、オブジェクトとしてワークシートが選択されてしまうようで、ボタンを
選択した状態でプロパティを見てもボタンの情報が参照できません
408デフォルトの名無しさん (ワッチョイ a77c-IHvl)
2020/01/27(月) 19:50:12.48ID:0hVuFT9Z0409デフォルトの名無しさん (ワッチョイ 475f-9rwV)
2020/01/27(月) 20:35:24.91ID:2ZMm50820410デフォルトの名無しさん (アークセー Sx7b-A/Ym)
2020/01/27(月) 20:37:54.19ID:KoUrFee7x >>409
だから、フォームコントロールとActiveXコントロールのどっちなの
だから、フォームコントロールとActiveXコントロールのどっちなの
411デフォルトの名無しさん (ワッチョイ 475f-9rwV)
2020/01/27(月) 21:01:21.61ID:2ZMm50820 >>410
失礼、フォームコントロールでした
失礼、フォームコントロールでした
412デフォルトの名無しさん (アークセー Sx7b-A/Ym)
2020/01/28(火) 07:51:36.53ID:C+B4t99Kx >>411
名前を調べるなんて煩瑣な処理にしなくても、フォームコントロールだけを消さずに画像だけを消したいなら下のようにやれば良いのでは
Public Sub pics_delete(sname As String)
Dim delShape As Shape
For Each delShape In Worksheets(sname).Shapes
With delShape
If .Type <> msoFormControl Then
If .Type = msoPicture Then .Delete
End If
End With
Next delShape
End Sub
delShape.Typeで取得できる図形タイプを表す定数値がMsoShapeType.msoFormControlだったらフォームコントロール、MsoShapeType.msoPictureだったら画像だと判断するようにする
他にも消したいタイプの図形があるなら削除判定の箇所で任意のMsoShapeType列挙体に当てはまるかType属性を持っているかどうかを判定させたら良い
名前を調べるなんて煩瑣な処理にしなくても、フォームコントロールだけを消さずに画像だけを消したいなら下のようにやれば良いのでは
Public Sub pics_delete(sname As String)
Dim delShape As Shape
For Each delShape In Worksheets(sname).Shapes
With delShape
If .Type <> msoFormControl Then
If .Type = msoPicture Then .Delete
End If
End With
Next delShape
End Sub
delShape.Typeで取得できる図形タイプを表す定数値がMsoShapeType.msoFormControlだったらフォームコントロール、MsoShapeType.msoPictureだったら画像だと判断するようにする
他にも消したいタイプの図形があるなら削除判定の箇所で任意のMsoShapeType列挙体に当てはまるかType属性を持っているかどうかを判定させたら良い
413デフォルトの名無しさん (ワッチョイ bff7-muPn)
2020/01/28(火) 09:01:31.91ID:Ft5XlNEA0414デフォルトの名無しさん (アウアウエー Sa1f-9rwV)
2020/01/28(火) 09:48:07.01ID:9/9sPnJua 終わりの鐘は鳴り響いた
https://ascii.jp/elem/000/004/000/4000725/
https://ascii.jp/elem/000/004/000/4000725/
415デフォルトの名無しさん (ドコグロ MM1f-9ipO)
2020/01/28(火) 10:02:58.52ID:Nfh+nWpkM あとは新しいVBAウィルスが出てセキュリティ業者が騒いだらVBAは本当に終わりだな
416デフォルトの名無しさん (ワッチョイ 4740-OdrL)
2020/01/28(火) 10:46:16.03ID:ih37tboE0 >>414
それ前にも貼られたけど、今までのとの違いが分からんのだが
それ前にも貼られたけど、今までのとの違いが分からんのだが
417デフォルトの名無しさん (オイコラミネオ MMdb-RemH)
2020/01/28(火) 15:16:34.29ID:oKycYjGsM >>414
VBAでもできる範疇なら全く覚える気起こらん
VBAでもできる範疇なら全く覚える気起こらん
418デフォルトの名無しさん (ワッチョイ e7da-Egc/)
2020/01/28(火) 17:56:01.82ID:WltGdJqx0 覚えてないことはできるかどうかも判断できない
419デフォルトの名無しさん (ワッチョイ 475f-9rwV)
2020/01/28(火) 18:12:38.87ID:OkfjSvr+0420デフォルトの名無しさん (ドコグロ MM1f-CT20)
2020/01/28(火) 18:28:16.91ID:jS595giQM421デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/01/29(水) 10:51:07.25ID:QiJT1T/Bd422デフォルトの名無しさん (ワッチョイ 5d2f-KoMo)
2020/01/29(水) 20:53:08.43ID:WcpQW9dq0 まったく同じことしかできないなら乗り換える要素がない
423デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/01/29(水) 21:53:26.65ID:QiJT1T/Bd 全く同じことができるなら、新規に憶えるだけじゃん。
それはこっちの労力だけで済む。
今後移行していくとすればその程度大した問題じゃない。
今まで他言語では出来なかったり、不便だったからVBAを使っていたわけでね。
それはこっちの労力だけで済む。
今後移行していくとすればその程度大した問題じゃない。
今まで他言語では出来なかったり、不便だったからVBAを使っていたわけでね。
424デフォルトの名無しさん (ワッチョイ ea01-CWn9)
2020/01/29(水) 22:24:20.41ID:PCXIkBj+0 >>422
同じことが楽にできるなら乗り換える理由になるでしょ?
同じことが楽にできるなら乗り換える理由になるでしょ?
425デフォルトの名無しさん (ワッチョイ f1ce-unxX)
2020/01/29(水) 23:05:27.98ID:vXudwKK20 今までと同じことをするだけなら、今までに書いたコードをそのまま使い回すのが一番楽だよな
わざわざ書き直す手間はだれが負担するんだ
わざわざ書き直す手間はだれが負担するんだ
426デフォルトの名無しさん (アウアウウー Sa21-jaaY)
2020/01/29(水) 23:12:48.36ID:KmqvK0eda427デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/01/29(水) 23:27:08.67ID:/IekKsgr0 sheet("sheet1").select!
さよか〜
個人的にはjQueryが一番嬉しい
あれ、記述が超絶楽ちんなんだよ。cssセレクタとかExcel vbaと感覚的にかなり似てる部分があると思う
$("sheets!").cell(1,2).backgroundcolor("red")
とかね
と書きながら思ったけどこれ別に言語買える必要ないな
googleのapps scriptは冗長でかなりめんどくさい
強制的にアドイン扱いだしタイプが長い
さよか〜
個人的にはjQueryが一番嬉しい
あれ、記述が超絶楽ちんなんだよ。cssセレクタとかExcel vbaと感覚的にかなり似てる部分があると思う
$("sheets!").cell(1,2).backgroundcolor("red")
とかね
と書きながら思ったけどこれ別に言語買える必要ないな
googleのapps scriptは冗長でかなりめんどくさい
強制的にアドイン扱いだしタイプが長い
428デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/01/30(木) 01:32:32.11ID:OC7VpsKDd429デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/01/30(木) 01:33:34.48ID:OC7VpsKDd >>426
君のコードは大したことやってないの間違いじゃね?
君のコードは大したことやってないの間違いじゃね?
430デフォルトの名無しさん (アウアウエー Sa52-/fp1)
2020/01/30(木) 08:06:07.77ID:c+cMZ6b7a ぶったけインテリセンス次第なんだよなぁ
javascriptでインテリセンスが優秀なら移らない理由ないし
インテリセンスが不自由ならVBAやめないし
javascriptでインテリセンスが優秀なら移らない理由ないし
インテリセンスが不自由ならVBAやめないし
431デフォルトの名無しさん (ドコグロ MM6d-jaaY)
2020/01/30(木) 08:13:50.21ID:wtwPJonTM >>429
VBAに大したことやらせなきゃいけないなら設計ミスだよ
VBAに大したことやらせなきゃいけないなら設計ミスだよ
432デフォルトの名無しさん (オイコラミネオ MM92-zWbH)
2020/01/30(木) 18:17:30.68ID:Pn/eUKFJM VBAで大したことやっちゃいかんでしょ
433デフォルトの名無しさん (アウアウエー Sa52-/fp1)
2020/01/30(木) 18:33:44.35ID:dbuen9v3a 自分の仕事の範囲で統計解析とかやるけどな
434デフォルトの名無しさん (ドコグロ MMb1-jaaY)
2020/01/30(木) 18:53:21.09ID:wB7TmKf3M それがPythonだったら同じことやってても倍の年収貰えるのにもったいない
435デフォルトの名無しさん (ワッチョイ 79b0-Afy/)
2020/01/31(金) 00:09:52.88ID:vDcmNEzT0 jQueryももう大分レガシー扱いだぞ
436デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/01/31(金) 02:51:37.91ID:5fr2LAkld Pythonでも無能は収入低いぞ。
437デフォルトの名無しさん (ワッチョイ 6a94-rlSO)
2020/01/31(金) 02:57:44.63ID:My55hBAe0 VBAのセキュリティは大問題
まともな会社は使用禁止
あんたの会社は禁止されてるよね?
まともな会社は使用禁止
あんたの会社は禁止されてるよね?
438デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/01/31(金) 03:12:26.11ID:5fr2LAkld 今まで、銀行、通信大手D社、保険、金融で働いたが禁止になってる所なんて無かったがね。
寧ろ、他アプリのインストールは基本禁止だったけど。
寧ろ、他アプリのインストールは基本禁止だったけど。
439デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/01/31(金) 03:14:49.50ID:5fr2LAkld そういやあ、某電気メーカーとかも2ヶ所有るけどどっちも禁止じゃ無かったな。
>>437
VBA にどんなリスクがあるというのですか?
VBA にどんなリスクがあるというのですか?
441デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/01/31(金) 20:31:33.67ID:3L7hmACM0 アスタリスク
442デフォルトの名無しさん (スプッッ Sd12-unxX)
2020/01/31(金) 20:37:16.44ID:z8AuaM8Bd フリスク
443デフォルトの名無しさん (スップ Sd0a-unxX)
2020/01/31(金) 20:38:06.28ID:cFUtKE40d バジリスク
444デフォルトの名無しさん (アウアウウー Sa21-jaaY)
2020/01/31(金) 20:58:33.01ID:HqJxIhd9a VBAはブックを開いただけで何でもやりたい放題で、脆弱性とかそういう以前の問題なの
例えるなら、訪問者に対してインターホン越しに応対するなどの身の安全を守る手段が何もなく、
無視するか家に上げるかの選択肢しかない
例えるなら、訪問者に対してインターホン越しに応対するなどの身の安全を守る手段が何もなく、
無視するか家に上げるかの選択肢しかない
445デフォルトの名無しさん (スップ Sd0a-unxX)
2020/01/31(金) 21:01:57.72ID:cFUtKE40d 古いExcelしか使ったことないんだろうね
>>444
その例えは例えになっていないと思いますよ
具体的にどういう危険性があるのか、それがごく普通の Windows アプリ by win32api & MFC と比べてどのように危険になったのか、それを示していただけませんかね
その例えは例えになっていないと思いますよ
具体的にどういう危険性があるのか、それがごく普通の Windows アプリ by win32api & MFC と比べてどのように危険になったのか、それを示していただけませんかね
447デフォルトの名無しさん (ワッチョイ b501-5BC/)
2020/01/31(金) 21:11:45.14ID:qTFRZrOJ0448デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/01/31(金) 23:14:09.09ID:3L7hmACM0 俺も知らんが、Excel脆弱性でググると色々出てくるってことは、そういうことなんじゃないの?
449デフォルトの名無しさん (ワッチョイ 5d1f-zas1)
2020/01/31(金) 23:17:05.34ID:A6FbBq7w0 シート1のA行を1列目から右にセルに入ってる文字を配列に順番に入れるにはどうしたらいいですか?
450デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/01/31(金) 23:23:17.84ID:3L7hmACM0 1 2 3
A
B
C
こ、こうか?
画面が横になってないかそれ。
A
B
C
こ、こうか?
画面が横になってないかそれ。
451デフォルトの名無しさん (ワッチョイ b501-JUiw)
2020/01/31(金) 23:34:43.97ID:XWsoxoln0 >>449
WorksheetFunction.Index(取得したい範囲or取得した二次元配列,1)
WorksheetFunction.Index(取得したい範囲or取得した二次元配列,1)
452デフォルトの名無しさん (ワッチョイ 397c-O1Hv)
2020/01/31(金) 23:35:50.05ID:Y35MubRb0453デフォルトの名無しさん (ワッチョイ b501-JUiw)
2020/01/31(金) 23:42:44.02ID:XWsoxoln0 それだと二次元配列になって使い勝手悪くないか?
イテレータで回すならいいんだろうけど・・・
イテレータで回すならいいんだろうけど・・・
454デフォルトの名無しさん (ワッチョイ b501-JUiw)
2020/01/31(金) 23:57:41.94ID:XWsoxoln0 ミス
WorksheetFunction.Index(取得した二次元配列,1,0)
だった
WorksheetFunction.Index(取得した二次元配列,1,0)
だった
455デフォルトの名無しさん (ワッチョイ 397c-wdG2)
2020/02/01(土) 00:00:37.73ID:7UP4LFJm0 >>453
「A行1列目から右」が一次元か二次元か判断付かん
「A行1列目から右」が一次元か二次元か判断付かん
456デフォルトの名無しさん (ワッチョイ f1ce-unxX)
2020/02/01(土) 00:45:50.64ID:/851YuNs0457デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/02/01(土) 01:30:43.62ID:vD0VjYxE0 配列って言われたら普通はVBAの話だと思うが、実はシート関数の話をしているんじゃないか?
458デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 11:40:24.75ID:6d1xNKB7d >>446
まあ、マクロウィルスは作成が簡単というのはあるな。
VBAのプログラムを作成するプログラムが簡単に作成出来るので。
但し、Excelもそれを封じる為にセキュリティーセンター内で、そういうプログラムの実行をするための設定としての「VBA プロジェクト オブジェクト モデルへのアクセスを信頼する」のチェックがデフォルトで外れている。
このチェックを付けて運用するのは危険だな。
でもここでチェックが付いてるとVBAが無くても勝手にVBA組まれちゃうんで、VBAの有る無しにかかわらずExcel自体が危険だな。
従って>>444のVBAの危険には該当しない。
>>444の言う危険って何だろうな?
所詮、よく知らない奴が知ったかぶりで語ってるだけ?
まあ、マクロウィルスは作成が簡単というのはあるな。
VBAのプログラムを作成するプログラムが簡単に作成出来るので。
但し、Excelもそれを封じる為にセキュリティーセンター内で、そういうプログラムの実行をするための設定としての「VBA プロジェクト オブジェクト モデルへのアクセスを信頼する」のチェックがデフォルトで外れている。
このチェックを付けて運用するのは危険だな。
でもここでチェックが付いてるとVBAが無くても勝手にVBA組まれちゃうんで、VBAの有る無しにかかわらずExcel自体が危険だな。
従って>>444のVBAの危険には該当しない。
>>444の言う危険って何だろうな?
所詮、よく知らない奴が知ったかぶりで語ってるだけ?
459デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 11:46:35.95ID:RZeoMljp0 他の言語で業務を仕組化するって要は自分の価値を切り売りしてるようなもんだからな。
自分への属人性を排除して誰でも自分と同じ作業ができるようにする。
そんなんで金もらっても用がなくなれば切られるだけ。一時的に給料が上がるだけで自分にとって何のメリットもない。
それよりVBAで自分の仕事をブラックボックス化して属人化しといたほうが得。
自分への属人性を排除して誰でも自分と同じ作業ができるようにする。
そんなんで金もらっても用がなくなれば切られるだけ。一時的に給料が上がるだけで自分にとって何のメリットもない。
それよりVBAで自分の仕事をブラックボックス化して属人化しといたほうが得。
460デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 12:24:16.95ID:JknOw5Wd0 >>459
転職後にそういうカスを追い詰めるのが趣味です
徹夜でプログラム読み切ってバグとミスを指摘し続けて「え、ここじゃないんですか?みた瞬間にわかりますけど・・(大嘘)」
で大概の人はイライラMAXでデバッグが手につかなくなるwざっこwww
転職後にそういうカスを追い詰めるのが趣味です
徹夜でプログラム読み切ってバグとミスを指摘し続けて「え、ここじゃないんですか?みた瞬間にわかりますけど・・(大嘘)」
で大概の人はイライラMAXでデバッグが手につかなくなるwざっこwww
461デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 12:39:36.37ID:6d1xNKB7d462デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 12:41:37.55ID:6d1xNKB7d463デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/02/01(土) 12:56:41.71ID:vD0VjYxE0 Test(ByVal a As String)
Test(ByRef a As String) ← こっちって型指定する意味ある?
Test(ByRef a) か Test(a) だと何かまずい?
Test(ByRef a As String) ← こっちって型指定する意味ある?
Test(ByRef a) か Test(a) だと何かまずい?
464デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 12:57:29.84ID:JknOw5Wd0465デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 13:02:40.39ID:JknOw5Wd0 >>463
型が違う場合、コンパイル時点でエラーに出来る
けど型がふわふわのvbaでやる意味は薄いとは思う
Sub foo()
a = 1
Debug.Print Test(a)
End Sub
Sub Test(ByRef a As String)
End Sub
型が違う場合、コンパイル時点でエラーに出来る
けど型がふわふわのvbaでやる意味は薄いとは思う
Sub foo()
a = 1
Debug.Print Test(a)
End Sub
Sub Test(ByRef a As String)
End Sub
466デフォルトの名無しさん (ワッチョイ f1ce-unxX)
2020/02/01(土) 13:06:17.87ID:/851YuNs0 まあ、たまにタイプミスを発見できるとか、時間が経ってからコードに手を入れたい時に型が書いてあれば確認しなくてすむとか、そういう薄いメリットはあるかな
467デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 13:21:19.67ID:RZeoMljp0 パスワードかけてるのにどうやって見るんですかねぇ、犯罪者さん。
468デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 13:22:06.87ID:6d1xNKB7d469デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 13:23:10.13ID:6d1xNKB7d470デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 13:25:52.77ID:RZeoMljp0 技術的に可能だから不正アクセスするのか
犯罪者は発想が違うな
犯罪者は発想が違うな
471デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 13:31:03.95ID:6d1xNKB7d472デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 14:50:58.68ID:RZeoMljp0 まぁ3流プログラマじゃ数字の流れは盗めてもその数字が意味するところまでは汲み取れないのが現実
相手がプログラミングができないと思い込んで知識窃盗を試みて数値の流れを盗んだところで自己満足
それをどう使うかなんて役員に対して説明もできんだろ
そんな奴はプログラミングできるぼくちゅごい!で思考停止してるアホだな。
相手がプログラミングができないと思い込んで知識窃盗を試みて数値の流れを盗んだところで自己満足
それをどう使うかなんて役員に対して説明もできんだろ
そんな奴はプログラミングできるぼくちゅごい!で思考停止してるアホだな。
473デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 15:24:51.88ID:JknOw5Wd0474デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 15:27:07.32ID:JknOw5Wd0 >>472
そんな誰にも分からないような高等な知識をわざわざパスワードかけて、毎回パスワード解除してるの?なんの意味があるの?手間なだけでは?
そんな誰にも分からないような高等な知識をわざわざパスワードかけて、毎回パスワード解除してるの?なんの意味があるの?手間なだけでは?
475デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 15:40:01.24ID:RZeoMljp0 凄くなくてもお前には無理だよ
476デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 16:05:04.46ID:6d1xNKB7d 負け惜しみが酷い。
パスワード解除出来ることも知らない程度の奴の高度なプログラムなんて、こっちにとっては初心者コードじゃねーの?
精々、中級者までだろうよw
パスワード解除出来ることも知らない程度の奴の高度なプログラムなんて、こっちにとっては初心者コードじゃねーの?
精々、中級者までだろうよw
477デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 16:20:23.93ID:RZeoMljp0 で、コードがかけたから何?
結局実務からseが要件定義しないとお前らは何もできないし、要件定義された内容を分割して指示通りにコード化してるだけだろ。
それのどこが偉いの?偉いのは実務だよ。
それにパスワードは外せて簡単に内容見れるとか言うなら俺が自分で計算やDB用ののdll書いてブラックボックス化を進めればいいのか
いくらでもブラックボックス化はできるけど信用の上に立って簡単なvbaで処理してるにすぎんよ
プログラマーが偉そうにするなら俺は協力しないし、会社命令でも手を抜くね
まるで属人化排除が印籠かなんかで相手の気持ちも考えず従えとか言ってくる勘違い馬鹿に協力するわけねぇわ
結局実務からseが要件定義しないとお前らは何もできないし、要件定義された内容を分割して指示通りにコード化してるだけだろ。
それのどこが偉いの?偉いのは実務だよ。
それにパスワードは外せて簡単に内容見れるとか言うなら俺が自分で計算やDB用ののdll書いてブラックボックス化を進めればいいのか
いくらでもブラックボックス化はできるけど信用の上に立って簡単なvbaで処理してるにすぎんよ
プログラマーが偉そうにするなら俺は協力しないし、会社命令でも手を抜くね
まるで属人化排除が印籠かなんかで相手の気持ちも考えず従えとか言ってくる勘違い馬鹿に協力するわけねぇわ
478デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 16:45:45.26ID:JknOw5Wd0 >>477
あぁ、何か変と思ったらこのスレの人をプログラマーと思っていたのか
このスレの大半は事務の人間だよ
俺は両方の経験者だけど
あんたは自分でレベル高いと思っているかもしれないけど、それほどでも無いって自覚だけはしておいたほうが良いぞ
あぁ、何か変と思ったらこのスレの人をプログラマーと思っていたのか
このスレの大半は事務の人間だよ
俺は両方の経験者だけど
あんたは自分でレベル高いと思っているかもしれないけど、それほどでも無いって自覚だけはしておいたほうが良いぞ
479デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 16:48:36.87ID:RZeoMljp0 教養レベルのことを書いたらレベル高いって主張してるように見えるならお前も大したことないな
気をつけろよ
気をつけろよ
480デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 17:08:00.96ID:JknOw5Wd0 虚空に向かって喧嘩してるアホに言われたくないわw
481デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 17:09:16.56ID:RZeoMljp0 あれれ〜>>460でからんできてそれ言うの?頭大丈夫?
482デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/01(土) 18:04:50.41ID:RZeoMljp0 他人のエクセルファイル盗み見るとか公然と言うカスは教えてくんにも劣る犬畜生だという自覚すらないからな
教えてくんならググレカスで済むけどおしえてくれないならファイル盗むわとかほんと頭いかれてるわ
教えてくんならググレカスで済むけどおしえてくれないならファイル盗むわとかほんと頭いかれてるわ
483デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 18:20:25.98ID:6d1xNKB7d >>482
随分な言い様だな。
パスワード解除出来ることを知識として知っているかどうかの問題だろ。
俺の場合はかなり昔、といってもOffice2007が出て少しした頃だが、社内マクロのメンテナンスの仕事した時に、既に会社辞めた奴の作ったVBAにパスワード掛かってて、会社に了解を取って解除したことあるけど、実際に解除する奴なんてそんなにいないだろ。
だいたい、何が楽しくて解除なんてするんだよw
パスワード掛かってるコードが糞コードじゃないなんてこたあねーぞ。
随分な言い様だな。
パスワード解除出来ることを知識として知っているかどうかの問題だろ。
俺の場合はかなり昔、といってもOffice2007が出て少しした頃だが、社内マクロのメンテナンスの仕事した時に、既に会社辞めた奴の作ったVBAにパスワード掛かってて、会社に了解を取って解除したことあるけど、実際に解除する奴なんてそんなにいないだろ。
だいたい、何が楽しくて解除なんてするんだよw
パスワード掛かってるコードが糞コードじゃないなんてこたあねーぞ。
484デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/01(土) 18:23:48.41ID:6d1xNKB7d485デフォルトの名無しさん (オイコラミネオ MMb5-ONLx)
2020/02/01(土) 19:30:50.72ID:1yr2tbu5M 他人のファイルって、、
勝手に個人のファイルを会社に持ち込むな
勝手に個人のファイルを会社に持ち込むな
486デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/01(土) 19:46:14.96ID:JknOw5Wd0 しゃべるほどアホが露呈してて草
487デフォルトの名無しさん (ワッチョイ f1a2-/fp1)
2020/02/02(日) 06:03:03.69ID:7y4L711k0 イチゴの苗を盗んでうちのイチゴは世界一とか言う人たちがいたなぁ
他人のエクセルファイルを盗んで一般化して得意になるって同じ精神構造なんだろうなぁ
日本の民度もここまで下がったらもうブラックボックス化して自衛するしかないね
他人のエクセルファイルを盗んで一般化して得意になるって同じ精神構造なんだろうなぁ
日本の民度もここまで下がったらもうブラックボックス化して自衛するしかないね
488デフォルトの名無しさん (アークセー Sxbd-cpDI)
2020/02/02(日) 07:54:10.43ID:+yWqX/mnx コモディティとしか言いようがないVBAでコードを盗むだの何だのと言ってることが笑える
489デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/02/02(日) 09:18:18.30ID:cGh+eVsA0 公表してもどうせ誰も読めやしないから、パスかけてないわってのが殆どだと思う。
490デフォルトの名無しさん (スプッッ Sdea-rlSO)
2020/02/02(日) 09:38:02.33ID:CPvk3cGFd パスワードで保護する価値はないだろ
価値があると思ってるのは自分だけ
VBAは20年前に終わった古いコードでもう出尽くしてるから今更目新しいのはない
あると思ってるのは誰かがもう採用済み
価値があると思ってるのは自分だけ
VBAは20年前に終わった古いコードでもう出尽くしてるから今更目新しいのはない
あると思ってるのは誰かがもう採用済み
491デフォルトの名無しさん (アークセー Sxbd-cpDI)
2020/02/02(日) 10:05:41.35ID:+yWqX/mnx パワークエリとかスピル関連でVBAのオブジェクトモデルにもどんどん新しい機能が追加されているぞ
目新しいものがないと言い切るのはおかしい
目新しいものがないと言い切るのはおかしい
492デフォルトの名無しさん (ワッチョイ f1ce-unxX)
2020/02/02(日) 11:49:30.13ID:jXfyVbWx0 >>489
他人が作った、他人の仕事専用のコードなんか読む意味がない
他人が作った、他人の仕事専用のコードなんか読む意味がない
493デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/02/02(日) 11:55:17.84ID:cGh+eVsA0 >VBAは20年前に終わった古いコード
さすがにそれはないわ。
新しいバージョンから使えるコードがあるから。
さすがにそれはないわ。
新しいバージョンから使えるコードがあるから。
494デフォルトの名無しさん (ワッチョイ ea9c-TmxF)
2020/02/02(日) 19:10:02.86ID:mYIZG7DM0 >>490
コードをコビーされたくない財産と思っているのではなくて、書いた人の責任、管理を外れて、コードが勝手に変更されない為に保護するのが一般的。
コードをコビーされたくない財産と思っているのではなくて、書いた人の責任、管理を外れて、コードが勝手に変更されない為に保護するのが一般的。
495デフォルトの名無しさん (ワッチョイ ea9c-TmxF)
2020/02/02(日) 19:14:37.59ID:mYIZG7DM0 他の言語では、変更可能な形で、実務者に配布なんてありえないからな。
496デフォルトの名無しさん (ワッチョイ ea9c-TmxF)
2020/02/02(日) 19:26:59.62ID:mYIZG7DM0 オープンソースの歴史が示している通り、ケチケチするよりオープンにして仲間を増やしたほうが、自分の得になる。
497デフォルトの名無しさん (ワッチョイ 7579-/fp1)
2020/02/02(日) 20:14:04.59ID:hngL1FZE0 列をコピーする際にクリップボードを使わずにコピーをする方法ってないでしょうか?
Columns("A").Copy
Columns("B").PasteSpecial (xlPasteValues)
こんな感じでコピーをするとwindows10標準の「クリップボードの履歴」という機能が使われるらしく、負荷がかかってエクセルブック自体が強制終了してしまいます
数行のデータなら何も問題ありませんが数十万行くらいあると落ちます
「クリップボードの履歴」機能をオフにすれば問題なく処理されるのは確認済みですがオンの状態で作業をしたいです
よろしくお願いします
Columns("A").Copy
Columns("B").PasteSpecial (xlPasteValues)
こんな感じでコピーをするとwindows10標準の「クリップボードの履歴」という機能が使われるらしく、負荷がかかってエクセルブック自体が強制終了してしまいます
数行のデータなら何も問題ありませんが数十万行くらいあると落ちます
「クリップボードの履歴」機能をオフにすれば問題なく処理されるのは確認済みですがオンの状態で作業をしたいです
よろしくお願いします
498デフォルトの名無しさん (ワッチョイ ea9c-TmxF)
2020/02/02(日) 20:21:49.04ID:mYIZG7DM0 >>497
Columns("B").Value=Columns("A").Value
Columns("B").Value=Columns("A").Value
499デフォルトの名無しさん (ブーイモ MM8e-XveV)
2020/02/02(日) 20:22:47.88ID:OwB/30gMM Columns("B").Value = Columns("A").Value
500デフォルトの名無しさん (ワッチョイ 11da-unxX)
2020/02/02(日) 21:11:52.76ID:cGh+eVsA0 Columns("B").Value = Columns("A").Value
より
buf = Columns("A").Value
Columns("B").Value = buf
の方がいいって本当かよ。
より
buf = Columns("A").Value
Columns("B").Value = buf
の方がいいって本当かよ。
501デフォルトの名無しさん (ワッチョイ 5ef7-0Ybi)
2020/02/02(日) 21:51:07.65ID:vSAu5ol40 Columns(1).Copy Destination:=Cells(1, 2)
502デフォルトの名無しさん (ワッチョイ c55f-4v/K)
2020/02/02(日) 22:05:15.57ID:mKkHkkxd0 Destinationは厳密にはクリップボード経由だけど、履歴を残したくないって目的の>>497は達成できるな。
503483 (スッップ Sd0a-HEKX)
2020/02/02(日) 22:06:50.74ID:TNVAL2WHd >>494
俺がメンテナンスしてた時もこれに関してパスワード掛けてたな。
そこは、みんなVBAを弄るので勝手に改変されていって管理出来ないという問題があった。
それであるフォルダにあるブックのVBA全てに有効期限とパスワード掛けるコードとかをその時作った記憶がある。
俺がメンテナンスしてた時もこれに関してパスワード掛けてたな。
そこは、みんなVBAを弄るので勝手に改変されていって管理出来ないという問題があった。
それであるフォルダにあるブックのVBA全てに有効期限とパスワード掛けるコードとかをその時作った記憶がある。
504デフォルトの名無しさん (スッップ Sd0a-HEKX)
2020/02/02(日) 22:08:48.13ID:TNVAL2WHd >>498
多分、数式消えるよ。
多分、数式消えるよ。
505デフォルトの名無しさん (オッペケ Srbd-0TLc)
2020/02/02(日) 22:35:10.30ID:nUy+9nC9r >>504
ん?
ん?
506デフォルトの名無しさん (ワッチョイ 7579-/fp1)
2020/02/02(日) 22:56:08.65ID:hngL1FZE0 返事が遅くなりましたが理想通りの結果を得られました
コピーしてからペーストという概念に捕らわれていましたがこんなこともできるのですね
ありがとうございました
コピーしてからペーストという概念に捕らわれていましたがこんなこともできるのですね
ありがとうございました
507デフォルトの名無しさん (ワッチョイ 6935-unxX)
2020/02/03(月) 07:20:26.91ID:la6dU8XN0 >>500
特にそう書く意味は無いよ
特にそう書く意味は無いよ
508デフォルトの名無しさん (ブーイモ MM81-yzQx)
2020/02/04(火) 22:29:38.52ID:w6oOKiy/M ExcelのかわりにGoogle spreadsheetが台頭してきましたが
これにもマクロは使えるの?
これにもマクロは使えるの?
509デフォルトの名無しさん (スップ Sdea-HEKX)
2020/02/04(火) 22:37:40.55ID:QPddTA8md510デフォルトの名無しさん (アウアウウー Sa9b-YLe+)
2020/02/05(水) 00:55:11.04ID:6fUVVF1Va511デフォルトの名無しさん (ワッチョイ 1f05-gL6P)
2020/02/05(水) 15:59:16.28ID:N1BYfKU30 なんかVBAの実効速度が今日から急に早くなったんだけどなんでだろう?
512デフォルトの名無しさん (ワッチョイ 377c-OB/u)
2020/02/05(水) 19:22:41.84ID:yswtwGvQ0 使うデータ同じで速度が変わったんなら裏でなんか重い処理でも動いてたんじゃないの
513デフォルトの名無しさん (ワッチョイ b735-56gX)
2020/02/05(水) 19:37:41.90ID:GjIRsdly0 windowsのアップデートで妙に早くなることはたまによくあるな
514デフォルトの名無しさん (ワッチョイ f7da-56gX)
2020/02/05(水) 20:42:09.91ID:ljVFwt830 >VBAよりは遥かに優れてるよ
言い過ぎ。
というか、シート内で出来ること以外は機能が殆どかぶってないと思うが。
言い過ぎ。
というか、シート内で出来ること以外は機能が殆どかぶってないと思うが。
515デフォルトの名無しさん (ワッチョイ 9f79-25VD)
2020/02/05(水) 22:14:16.66ID:QzJPWqba0516デフォルトの名無しさん (ワッチョイ f7da-56gX)
2020/02/05(水) 23:05:17.88ID:ljVFwt830 マクロの記録はあるが、乗り換えって・・。
使い分けだろう。
使い分けだろう。
517デフォルトの名無しさん (スプッッ Sd3f-5XTe)
2020/02/06(木) 10:38:54.91ID:Lc0GjY0Ud エクセルは多人数で同一ファイルの同時使用が出来ないからgoogleの方が遥かに便利
518デフォルトの名無しさん (ドコグロ MM6b-YLe+)
2020/02/06(木) 11:40:29.55ID:W5BIAByhM ローカルのExcelブックからDBに上げる・DBからブックに落とすだけのマクロは非常に多いからな
VBAマクロの代替以前に、Googleスプレッドシートに移行した時点で不要になるゴミはとても多い
VBAマクロの代替以前に、Googleスプレッドシートに移行した時点で不要になるゴミはとても多い
519デフォルトの名無しさん (ワッチョイ b735-56gX)
2020/02/06(木) 18:57:22.24ID:QU3mlgEx0 excelブックをメールで行ったり来たりさせてメールボックスパンパン
→消した後に悲鳴
何度見たことか
→消した後に悲鳴
何度見たことか
520デフォルトの名無しさん (ワンミングク MM7f-DTjJ)
2020/02/06(木) 19:11:07.60ID:FEAB4c07M >>510
win32api使えるのかよ?
win32api使えるのかよ?
521デフォルトの名無しさん (ドコグロ MM6b-YLe+)
2020/02/06(木) 19:33:40.30ID:W5BIAByhM522デフォルトの名無しさん (ワッチョイ 9fad-DTjJ)
2020/02/06(木) 19:38:03.11ID:S5nSkDf80 面倒臭いじゃないか
523デフォルトの名無しさん (ドコグロ MM6b-YLe+)
2020/02/06(木) 19:43:08.95ID:W5BIAByhM 普通はその結果をDBなりに同期させる仕組みを考える方が面倒臭いと思うけど、仕事したことないんだろうね
524デフォルトの名無しさん (ワッチョイ b735-56gX)
2020/02/06(木) 19:47:10.12ID:QU3mlgEx0 VBAとGASだとさすがにVBAの方が上かな
GASはローカルファイルへのアクセス権がなさすぎるのと、他スプレッドシート扱うのがかなり面倒くさい。まぁしゃーないっちゃしゃーないんだけど
さっとスクリプト組みたい時はVBA+Excelシート以上にお手軽な環境は無いと思う
>>523
webに対しては確実にgoogleスプレッドシートの方が上だが・・・
どっちが上ってのは無いと思う。使い方次第だろう
GASはローカルファイルへのアクセス権がなさすぎるのと、他スプレッドシート扱うのがかなり面倒くさい。まぁしゃーないっちゃしゃーないんだけど
さっとスクリプト組みたい時はVBA+Excelシート以上にお手軽な環境は無いと思う
>>523
webに対しては確実にgoogleスプレッドシートの方が上だが・・・
どっちが上ってのは無いと思う。使い方次第だろう
525デフォルトの名無しさん (ワッチョイ 9fad-DTjJ)
2020/02/06(木) 20:18:44.88ID:S5nSkDf80 >>523
DBならaccessとodbcでいいや
DBならaccessとodbcでいいや
526デフォルトの名無しさん (ワッチョイ f7a2-Zca7)
2020/02/06(木) 20:23:02.70ID:5wTMgkbk0 DB接続してないエクセルとか糞だろw
GAS?情報共有が楽なだけで話にならん
GAS?情報共有が楽なだけで話にならん
527デフォルトの名無しさん (ワッチョイ 9fad-DTjJ)
2020/02/06(木) 20:50:55.98ID:S5nSkDf80 >>523
そもそもexcelやaccessならADODBで簡単にデータベース連携できるし
そもそもexcelやaccessならADODBで簡単にデータベース連携できるし
528デフォルトの名無しさん (ワッチョイ b735-56gX)
2020/02/06(木) 21:01:17.75ID:QU3mlgEx0 そもそもみんなどういう風に使っているんだ?
俺は・・・
・メインシステムはweb上にあり、ベンダーに開発してもらっている。csvを吐き出すシステムがある
・csvの元になるSQL部分は自作(しょっちゅう変わるから自分で作ったほうが早い)。
・後はそのcsvに対してvbaでちゃーっと加工して配布(順序変えたり見やすくしたり)
・ローカルネットワークにもファイルを置く
こういう使い方だとVBAの方が楽なんだよね。GASを使う理由があまりない。データが必要なら、都度csv落とせば良い
ODBCとかめんどくさくない?
php直接書いたほうが遥かに早いし楽だし、データの劣化を最小限に抑えられると思うんだけどなぁ
俺は・・・
・メインシステムはweb上にあり、ベンダーに開発してもらっている。csvを吐き出すシステムがある
・csvの元になるSQL部分は自作(しょっちゅう変わるから自分で作ったほうが早い)。
・後はそのcsvに対してvbaでちゃーっと加工して配布(順序変えたり見やすくしたり)
・ローカルネットワークにもファイルを置く
こういう使い方だとVBAの方が楽なんだよね。GASを使う理由があまりない。データが必要なら、都度csv落とせば良い
ODBCとかめんどくさくない?
php直接書いたほうが遥かに早いし楽だし、データの劣化を最小限に抑えられると思うんだけどなぁ
529デフォルトの名無しさん (ワッチョイ 9fad-DTjJ)
2020/02/06(木) 21:12:09.33ID:S5nSkDf80530デフォルトの名無しさん (ワッチョイ b735-56gX)
2020/02/06(木) 21:31:53.31ID:QU3mlgEx0531デフォルトの名無しさん (スプッッ Sd3f-b0Wi)
2020/02/07(金) 07:38:57.80ID:wkeLovp2d532デフォルトの名無しさん (スフッ Sdbf-n9KO)
2020/02/07(金) 11:47:05.80ID:aK4BdxNCd 社内のシステムへのログインをVBAで行おうとしたのですが、
特定の入力項目を小ウィンドの選択項目から選んででないとログインできません。
VBAを使って同じような入力内容に出来てるのですがダメです。
何かやり方があれば教えてください。
特定の入力項目を小ウィンドの選択項目から選んででないとログインできません。
VBAを使って同じような入力内容に出来てるのですがダメです。
何かやり方があれば教えてください。
533デフォルトの名無しさん (ベーイモ MM4f-N6vr)
2020/02/07(金) 12:43:05.40ID:cytAyAiUM c++で自作したdllをシャドウコピーして呼び出したいんだけど、そんなことできますかね?
できるなら教えてください
できるなら教えてください
534デフォルトの名無しさん (スプッッ Sd3f-5XTe)
2020/02/07(金) 13:44:00.60ID:EHPtr6+3d 社内システムへのログインでエクセル開くの?
キモくない?
キモくない?
535デフォルトの名無しさん (ワッチョイ 9f42-7zoJ)
2020/02/07(金) 14:23:11.44ID:TkpdzcfH0 うちもエクセルからだな
「え?URLのショートカットかなんかじゃなくそれ?」って思った
「え?URLのショートカットかなんかじゃなくそれ?」って思った
536デフォルトの名無しさん (ワッチョイ f7ce-56gX)
2020/02/07(金) 15:32:34.32ID:YhDqw1xL0 >>532
最後の手段はSendKeysとかWin32APIでマウス操作
最後の手段はSendKeysとかWin32APIでマウス操作
537デフォルトの名無しさん (ワッチョイ 378e-Ygtj)
2020/02/07(金) 17:44:09.47ID:f2jr6wz80 社内のシステムへのログインが全世界どこも同じだと思ってる馬鹿は死ね
538デフォルトの名無しさん (ワッチョイ f7da-56gX)
2020/02/07(金) 19:41:49.69ID:X+WmhjzG0 >>532
選択項目を選ぶと、非表示で隠れている部分にあるフラグが変わると見た。
選択項目を選ぶと、非表示で隠れている部分にあるフラグが変わると見た。
539デフォルトの名無しさん (ワッチョイ f7da-56gX)
2020/02/07(金) 19:45:33.80ID:X+WmhjzG0 あと酷いのになると、テキストボックスが2個重なっていて、
くそっ! 片方ダミーか! ふざけんな! とかさ。
くそっ! 片方ダミーか! ふざけんな! とかさ。
540デフォルトの名無しさん (ワッチョイ 377c-OB/u)
2020/02/07(金) 19:57:32.82ID:xFn4xdfL0 >>539
まさに最近引き継いだものがその罠だった
まさに最近引き継いだものがその罠だった
541デフォルトの名無しさん (ワッチョイ ff63-tipF)
2020/02/08(土) 09:50:54.70ID:8SzUllIw0 セルA1に金額(例えば100)を入れて
セルA2にセルA1の金額の数値を入れた次の文章
代金はセルA1円になります。
↓
代金は100円になります。
を表示させたいです。
自力で下記のまでは出来ました。
Range("A2") = "代金は(セルA1)円です"
ですがセルA1の値を文章の途中に組み込めず困っています。
A2に表示された文章は後でコピー貼り付けに使用します
(この部分は自分で出来ますが・・・)。
ご教授宜しくお願い致します。
セルA2にセルA1の金額の数値を入れた次の文章
代金はセルA1円になります。
↓
代金は100円になります。
を表示させたいです。
自力で下記のまでは出来ました。
Range("A2") = "代金は(セルA1)円です"
ですがセルA1の値を文章の途中に組み込めず困っています。
A2に表示された文章は後でコピー貼り付けに使用します
(この部分は自分で出来ますが・・・)。
ご教授宜しくお願い致します。
542デフォルトの名無しさん (アウアウウー Sa9b-YLe+)
2020/02/08(土) 09:57:09.44ID:zm8ORV47a543541 (ワッチョイ ff63-tipF)
2020/02/08(土) 10:12:44.92ID:8SzUllIw0544デフォルトの名無しさん (アークセー Sx0b-OKS/)
2020/02/08(土) 10:43:22.85ID:/gJCCAG4x Cells(2, 1).Value = "代金は" & Cells(1, 1).Value & "円です"
545541 (ワッチョイ ff63-tipF)
2020/02/08(土) 10:47:03.25ID:8SzUllIw0 有難うございます!そのやり方で今からやってみます!
546デフォルトの名無しさん (ワッチョイ ffcc-VM48)
2020/02/08(土) 11:24:39.88ID:1IpoZ9Ay0 D列に「集計」という文字が含まれていなければ、その行を削除して行間を詰めるために
↓のコードを使いたいのですが、Unionの.Rowのところで「参照が不正または不完全です」になります
Sub Delete_Rows()
Dim LastRow As Long '最終行の変数
Dim DereteRow As Range '該当する行を格納
Dim r As Long '処理の範囲を格納
Dim ws As Worksheet
Set DereteRow = Nothing 'オブジェクトへの参照を解除
Set ws = Worksheets("Sheet1")
' F列を基準にシートの最終行を取得
LastRow = Cells(Rows.Count, 6).End(xlUp).Row
For r = 2 To LastRow '2行目から最終行までB列のセルを対象にする
'D列のセルが"集計"を含まない文字列の行なら DereteRow に追加
If Cells(r, "D") <> "*集計*" Then
Set DereteRow = Union(DereteRow, .Rows(r).EntireRow)
End If
Next r
'DereteRowに行が代入されていれば一括で削除するが、なければ処理を終了
If Not DereteRow Is Nothing Then
DereteRow.Delete
End If
End Sub
↓のコードを使いたいのですが、Unionの.Rowのところで「参照が不正または不完全です」になります
Sub Delete_Rows()
Dim LastRow As Long '最終行の変数
Dim DereteRow As Range '該当する行を格納
Dim r As Long '処理の範囲を格納
Dim ws As Worksheet
Set DereteRow = Nothing 'オブジェクトへの参照を解除
Set ws = Worksheets("Sheet1")
' F列を基準にシートの最終行を取得
LastRow = Cells(Rows.Count, 6).End(xlUp).Row
For r = 2 To LastRow '2行目から最終行までB列のセルを対象にする
'D列のセルが"集計"を含まない文字列の行なら DereteRow に追加
If Cells(r, "D") <> "*集計*" Then
Set DereteRow = Union(DereteRow, .Rows(r).EntireRow)
End If
Next r
'DereteRowに行が代入されていれば一括で削除するが、なければ処理を終了
If Not DereteRow Is Nothing Then
DereteRow.Delete
End If
End Sub
547デフォルトの名無しさん (ワッチョイ 9f01-ep3J)
2020/02/08(土) 12:09:16.53ID:Di3wk8ih0 >>546
そりゃWithもないのに
> .Rows(r).EntireRow
なんてされてもExcelは困っちゃうわな
ルーチン名はDelete_Rowsなのに変数名はDereteRowとか、wsは何に使うつもりなのかとか色々指摘したいところがありまくり
そりゃWithもないのに
> .Rows(r).EntireRow
なんてされてもExcelは困っちゃうわな
ルーチン名はDelete_Rowsなのに変数名はDereteRowとか、wsは何に使うつもりなのかとか色々指摘したいところがありまくり
548デフォルトの名無しさん (アークセー Sx0b-OKS/)
2020/02/08(土) 12:40:15.95ID:/gJCCAG4x >>546
.Rows(r)の"."を消すかActivesheet.Rows(r)に切り替える
蛇足だが、コードにいろいろとおかしな点があるので指摘しておく
・DeleteRowを変数として宣言した直後、まだ何も代入していないのにSet DereteRow = Nothingとやるのは無意味
・ルーチン名をDelete_Rowsにするんだったら削除対象行の変数はDeleteRowではなくTargetRowsとかにした方が良い
・変数 r は「処理の範囲」ではなく「削除対象行判定のループで使用する行カウンタ」と説明しないと意味が通じにくい。「範囲ならばRangeオブジェクトじゃないのか?」と思うし、どの処理で使ってるかも分からない
・変数 ws は何のために宣言してるのか?
.Rows(r)の"."を消すかActivesheet.Rows(r)に切り替える
蛇足だが、コードにいろいろとおかしな点があるので指摘しておく
・DeleteRowを変数として宣言した直後、まだ何も代入していないのにSet DereteRow = Nothingとやるのは無意味
・ルーチン名をDelete_Rowsにするんだったら削除対象行の変数はDeleteRowではなくTargetRowsとかにした方が良い
・変数 r は「処理の範囲」ではなく「削除対象行判定のループで使用する行カウンタ」と説明しないと意味が通じにくい。「範囲ならばRangeオブジェクトじゃないのか?」と思うし、どの処理で使ってるかも分からない
・変数 ws は何のために宣言してるのか?
549546 (ワッチョイ ffcc-VM48)
2020/02/08(土) 13:46:03.51ID:1IpoZ9Ay0 >>547
>>548
ありがとうございます。
↓で
"Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)"
の部分が「プロシージャの呼び出し、または引数が不正です。」になります
Sub Delete_Rows()
Dim LastRow As Long '最終行の変数
Dim TargetRows As Range '該当する行を格納
Dim r As Long '削除対象行判定のループで使用する行カウンタ変数
' F列を基準にシートの最終行を取得
LastRow = Cells(Rows.Count, 6).End(xlUp).Row
For r = 2 To LastRow '2行目から最終行までB列のセルを対象にする
'D列のセルが"集計"を含まない文字列の行なら TargetRows に追加
If Cells(r, "D") <> "*集計*" Then
Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)
End If
Next r
'TargetRowsに行が代入されていれば一括で削除するが、なければ処理を終了
If Not TargetRows Is Nothing Then
TargetRows.Delete
End If
End Sub
>>548
ありがとうございます。
↓で
"Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)"
の部分が「プロシージャの呼び出し、または引数が不正です。」になります
Sub Delete_Rows()
Dim LastRow As Long '最終行の変数
Dim TargetRows As Range '該当する行を格納
Dim r As Long '削除対象行判定のループで使用する行カウンタ変数
' F列を基準にシートの最終行を取得
LastRow = Cells(Rows.Count, 6).End(xlUp).Row
For r = 2 To LastRow '2行目から最終行までB列のセルを対象にする
'D列のセルが"集計"を含まない文字列の行なら TargetRows に追加
If Cells(r, "D") <> "*集計*" Then
Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)
End If
Next r
'TargetRowsに行が代入されていれば一括で削除するが、なければ処理を終了
If Not TargetRows Is Nothing Then
TargetRows.Delete
End If
End Sub
550デフォルトの名無しさん (ワッチョイ 9f01-ep3J)
2020/02/08(土) 14:42:01.53ID:Di3wk8ih0 >>549
ちょっとググったらUnion(Nothing, ...)はダメみたいやね
> Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)
↓
If TargetRows Is Nothing Then
Set TargetRows = ActiveSheet.Rows(r).EntireRow
Else
Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)
End If
ちょっとググったらUnion(Nothing, ...)はダメみたいやね
> Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)
↓
If TargetRows Is Nothing Then
Set TargetRows = ActiveSheet.Rows(r).EntireRow
Else
Set TargetRows = Union(TargetRows, ActiveSheet.Rows(r).EntireRow)
End If
551546 (ワッチョイ ffcc-VM48)
2020/02/08(土) 16:59:25.90ID:1IpoZ9Ay0552デフォルトの名無しさん (ワッチョイ 175f-5WGQ)
2020/02/08(土) 17:09:00.05ID:/OGIL8aD0 D列セルに「*集計*」と入れてみるべし。
553546 (ワッチョイ ffcc-VM48)
2020/02/08(土) 17:20:57.16ID:1IpoZ9Ay0554デフォルトの名無しさん (ワッチョイ 175f-5WGQ)
2020/02/08(土) 17:22:19.30ID:/OGIL8aD0 つまり、確認結果の通りです。
ワイルドカードが使えないので、LIKEかInstrを使ってください。
ワイルドカードが使えないので、LIKEかInstrを使ってください。
556デフォルトの名無しさん (ワッチョイ f7da-56gX)
2020/02/09(日) 13:06:00.86ID:/49HxrXf0 いつのまにかテレビでスギちゃんみなくなったな
557デフォルトの名無しさん (ワッチョイ 172c-4cqo)
2020/02/09(日) 23:14:06.46ID:ltQcsHZu0 auto_openでユーザーフォームを開きます。
テキストボックスにデータを入力してエンターキーを押すとコマンドボタンに進んで
コマンドボタンでエンターキーを押すとデータがシートに入力されて
テキストボックス内がクリアされてテキストボックスにsetfocusします。
またデータを入力して、の繰り返しなんですが
1回目は上手く行くのに2回目に入力した時にエンターキーを押しても進まない現象が多々起こるんです。
そんな時は一度シートを適当にクリックしてユーザーフォームのテキストボックスに戻るとそれ以降はその現象は起きないんですが、正直シートには触らせたくないんです。
エンターキーで進まない現象は必ずマクロを起動させた一回目で発生します。
同じ様な現象で悩んでいる人は居ませんか?
解決策があれば知りたいです。
テキストボックスにデータを入力してエンターキーを押すとコマンドボタンに進んで
コマンドボタンでエンターキーを押すとデータがシートに入力されて
テキストボックス内がクリアされてテキストボックスにsetfocusします。
またデータを入力して、の繰り返しなんですが
1回目は上手く行くのに2回目に入力した時にエンターキーを押しても進まない現象が多々起こるんです。
そんな時は一度シートを適当にクリックしてユーザーフォームのテキストボックスに戻るとそれ以降はその現象は起きないんですが、正直シートには触らせたくないんです。
エンターキーで進まない現象は必ずマクロを起動させた一回目で発生します。
同じ様な現象で悩んでいる人は居ませんか?
解決策があれば知りたいです。
558デフォルトの名無しさん (ワッチョイ f7da-56gX)
2020/02/10(月) 00:37:21.85ID:qIOTpjy+0 カーソルが消えて見えないだけで、実は進んでるんじゃないの?
そういう現象なら知ってるが。
そういう現象なら知ってるが。
559デフォルトの名無しさん (ワッチョイ 9701-w9wO)
2020/02/10(月) 06:52:30.10ID:53UatRUA0 小さい再現ソース出すのが早いかも
560デフォルトの名無しさん (ワッチョイ bf68-7Ol7)
2020/02/10(月) 08:44:50.58ID:/E57ld2P0 最少構成のソース試行錯誤してる間に解決するのもあるあるだしな
561デフォルトの名無しさん (ワッチョイ f7ce-56gX)
2020/02/10(月) 08:53:02.50ID:OYuxrVSd0 対処療法になるけど、起動直後に1回だけ自動でダミーのデータを送り込むマクロを仕込んでおくとか
562デフォルトの名無しさん (ワッチョイ d72f-ndoi)
2020/02/10(月) 22:45:50.30ID:BIhYTAab0 >1回目は上手く行くのに2回目に入力した時に
>必ずマクロを起動させた一回目で発生
どっちだよ
>必ずマクロを起動させた一回目で発生
どっちだよ
563デフォルトの名無しさん (ワッチョイ 9701-w9wO)
2020/02/10(月) 23:11:08.64ID:53UatRUA0564デフォルトの名無しさん (ワッチョイ f7da-Za6j)
2020/02/11(火) 05:10:09.38ID:psNQEJFZ0 させたー 回目?
565デフォルトの名無しさん (スプッッ Sd3f-XyXy)
2020/02/11(火) 07:49:44.54ID:xcQXy4MHd 昔は最小構成ソースを美しいコードとか言ってた時代もあったけど今じゃ可読性の悪いコードの見本
やっぱ誰でも見やすくないとね
自己満じゃダメよね
やっぱ誰でも見やすくないとね
自己満じゃダメよね
566デフォルトの名無しさん (ワッチョイ 9701-w9wO)
2020/02/11(火) 08:34:22.59ID:STnJqlOX0 >>565
昔は少ないメモリがゆえのことで自己満なだけではないし、可読性の悪いコードになるとも限らない
昔は少ないメモリがゆえのことで自己満なだけではないし、可読性の悪いコードになるとも限らない
567デフォルトの名無しさん (ワッチョイ b735-56gX)
2020/02/11(火) 09:16:55.47ID:EGsB/Toy0 知る限り一番縛りがキツイのはポケコン
昔は変数が一文字だけ。変数26種類で終了!って時代があって
可読性が悪いと死ぬ時代があった
オブジェクトももちろんなし
今は多少可読性が多少悪かろうが余裕で読める
昔は変数が一文字だけ。変数26種類で終了!って時代があって
可読性が悪いと死ぬ時代があった
オブジェクトももちろんなし
今は多少可読性が多少悪かろうが余裕で読める
568デフォルトの名無しさん (ワッチョイ bf68-7Ol7)
2020/02/11(火) 09:17:00.76ID:mxXo+J1O0569デフォルトの名無しさん (ワッチョイ 9f01-ep3J)
2020/02/11(火) 09:37:10.38ID:4y2EJSQ80 そもそも最小構成ソースってなに?
570デフォルトの名無しさん (ワッチョイ f7ce-56gX)
2020/02/11(火) 10:38:55.72ID:CJD1Or630 最初はトラブルシューティング話をしていたのに、565がいきなり関係ないことを言い出した
571デフォルトの名無しさん (ワッチョイ bf43-Wgw0)
2020/02/11(火) 23:45:05.58ID:nC/jcaXZ0 integerとlongについて教えてください
今までは数値によりこの二つは使い分けた方がいいと思っていました
しかし、ネットで調べるとintegerも結局longに変換?しているためlong型で統一した方がいいといったことが書かれています
となると、integerの使いどころはどこになるのでしょうか?
今までは数値によりこの二つは使い分けた方がいいと思っていました
しかし、ネットで調べるとintegerも結局longに変換?しているためlong型で統一した方がいいといったことが書かれています
となると、integerの使いどころはどこになるのでしょうか?
572デフォルトの名無しさん (ワッチョイ f7ce-56gX)
2020/02/11(火) 23:51:45.85ID:CJD1Or630 >>571
昔の名残と言い切っていいと思う
今は使い分ける意味があんまりなくなってしまった
強いて言えば大きい配列にするとメモリの使用量が変わってくることぐらい
バイナリファイルの読み書きでも結果が変わるけど、そもそもバイナリデータの処理はVBAに向いてない
昔の名残と言い切っていいと思う
今は使い分ける意味があんまりなくなってしまった
強いて言えば大きい配列にするとメモリの使用量が変わってくることぐらい
バイナリファイルの読み書きでも結果が変わるけど、そもそもバイナリデータの処理はVBAに向いてない
573デフォルトの名無しさん (ワッチョイ f7ce-56gX)
2020/02/11(火) 23:53:50.82ID:CJD1Or630 メモリの使用量が目に見えて変わってくる
にしといて
突っ込まれそうだから
にしといて
突っ込まれそうだから
574デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/12(水) 00:34:42.09ID:H+ZtqLYW0 1048576行だから縦はLong。
16384列だから横はInteger。
異論ある?
16384列だから横はInteger。
異論ある?
575デフォルトの名無しさん (ワッチョイ 129c-zeWM)
2020/02/12(水) 02:07:44.57ID:Xc/lg/zI0 仕様変更に備えてlong一択
576デフォルトの名無しさん (ワッチョイ cb8a-918i)
2020/02/12(水) 02:23:22.72ID:X92zMCbd0 縦はともかく、横が拡張されることなんかあるんかいな。
577デフォルトの名無しさん (ドコグロ MMaf-2sCL)
2020/02/12(水) 07:15:12.66ID:RAjHSRhnM 過去に拡張されたことあるから今後もあるかも
って思うのは不思議じゃない
って思うのは不思議じゃない
578デフォルトの名無しさん (ワッチョイ 16cc-BDVY)
2020/02/12(水) 14:43:59.70ID:ktDCHij50 A列に今日の日付が入っている行であれば、同じ行の"B"cnt〜"AA"cnt+2を水色でぬりつぶす
(対象はA列の4行目から最終行)
と
B列に数字の1が入っている行であれば、同じ行の"B"cnt〜"AA"cnt+2を赤色でぬりつぶす
(対象はA列の4行目から最終行)
というのをしたくて書いたのですが、エラーなどはなく、何も起きません
原因を教えてください。
Sub tes()
Dim cnt As Long
Dim buf As String
Dim cnt2 As Long
buf = Date
For cnt = Cells(Rows.Count, 1).End(xlUp).Row To 4 Step 2
If Cells(cnt, 1) = buf Then
Range(Cells(cnt, 3), Cells(cnt + 2, 27)).Interior.Color = RGB(173, 242, 249)
End If
Next cnt
For cnt2 = Cells(Rows.Count, 2).End(xlUp).Row To 4 Step 2
If Cells(cnt2, 2) = 1 Then
Range(Cells(cnt, 3), Cells(cnt + 2, 27)).Interior.Color = RGB(255, 0, 0)
End If
Next cnt2
End Sub
(対象はA列の4行目から最終行)
と
B列に数字の1が入っている行であれば、同じ行の"B"cnt〜"AA"cnt+2を赤色でぬりつぶす
(対象はA列の4行目から最終行)
というのをしたくて書いたのですが、エラーなどはなく、何も起きません
原因を教えてください。
Sub tes()
Dim cnt As Long
Dim buf As String
Dim cnt2 As Long
buf = Date
For cnt = Cells(Rows.Count, 1).End(xlUp).Row To 4 Step 2
If Cells(cnt, 1) = buf Then
Range(Cells(cnt, 3), Cells(cnt + 2, 27)).Interior.Color = RGB(173, 242, 249)
End If
Next cnt
For cnt2 = Cells(Rows.Count, 2).End(xlUp).Row To 4 Step 2
If Cells(cnt2, 2) = 1 Then
Range(Cells(cnt, 3), Cells(cnt + 2, 27)).Interior.Color = RGB(255, 0, 0)
End If
Next cnt2
End Sub
579デフォルトの名無しさん (ワッチョイ ebce-OxJ8)
2020/02/12(水) 16:42:09.14ID:Z+Yfmz1v0 >>578
Forの条件が逆
For cnt = 4 to Cells(Rows.Count, 1).End(xlUp).Row
For cnt2 = 4 to Cells(Rows.Count, 2).End(xlUp).Row
Forの条件が逆
For cnt = 4 to Cells(Rows.Count, 1).End(xlUp).Row
For cnt2 = 4 to Cells(Rows.Count, 2).End(xlUp).Row
580デフォルトの名無しさん (ワッチョイ de8c-u3Kg)
2020/02/12(水) 17:49:54.70ID:5NT9XmcH0 VBA学びたいんだけど、office以外でVBA出来るところってない?
581デフォルトの名無しさん (アウアウエー Saaa-GUQA)
2020/02/12(水) 17:53:09.88ID:yl8WS00pa LibreOfficeで使える。
インテリセンスが使えないからだれも使わないしそれでもLibreOfficeつかうならpythonで動かす。
インテリセンスが使えないからだれも使わないしそれでもLibreOfficeつかうならpythonで動かす。
582デフォルトの名無しさん (ドコグロ MM32-H6bD)
2020/02/12(水) 18:16:19.33ID:gfctBwevM 今から学ぶなら>>414かGoogleスプレッドシートのGASにしとけば?
どっちも無料だしVBAはレガシーでもうすぐ無くなるよ
どっちも無料だしVBAはレガシーでもうすぐ無くなるよ
584デフォルトの名無しさん (ワッチョイ a37c-hIB2)
2020/02/12(水) 19:23:16.28ID:ATdl69jc0 >>580
MS Office以外でという意味ならLibre OfficeのマクロでVBAが使えるがMS Officeとの互換機能のための物だから完全ではない
MS Office以外でという意味ならLibre OfficeのマクロでVBAが使えるがMS Officeとの互換機能のための物だから完全ではない
585デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/12(水) 20:30:50.73ID:H+ZtqLYW0 >VBAはレガシーでもうすぐ無くなるよ
10年後も余裕で残ってると思うが・・。
10年後も余裕で残ってると思うが・・。
586デフォルトの名無しさん (アウアウエー Saaa-GUQA)
2020/02/12(水) 20:51:59.56ID:yl8WS00pa 別に先端の言語、例えばスカラーやハスケルを使ったとしてもやってることはVBAを使ってやることと同じじゃね。
それがオンプレやウェブを通じてデータを共有するかエクセルで個人でデータを扱うかの違いだけでさ。
目的がデータ共有じゃなくて個人のデータ分析・見える化なら簡素なVBAのほうが優秀に決まってるとおもうが。
それがオンプレやウェブを通じてデータを共有するかエクセルで個人でデータを扱うかの違いだけでさ。
目的がデータ共有じゃなくて個人のデータ分析・見える化なら簡素なVBAのほうが優秀に決まってるとおもうが。
587デフォルトの名無しさん (アウアウエー Saaa-GUQA)
2020/02/12(水) 20:58:51.98ID:yl8WS00pa 他の言語ならGUIやらグラフ作成のプログラミングが必要なところがエクセルならなしでいいし自分用に簡単にカスタマイズできるとかチートだろ。
その便利さが分からないってちょっとかわいそうだと思うが。保持できるデータ量が少ないっていう人がいるかもしれないけど
それこそDBと接続すれば解決だろ。なんで他言語信仰があるのか俺にはようわからんがー
その便利さが分からないってちょっとかわいそうだと思うが。保持できるデータ量が少ないっていう人がいるかもしれないけど
それこそDBと接続すれば解決だろ。なんで他言語信仰があるのか俺にはようわからんがー
588デフォルトの名無しさん (ワッチョイ 7335-OxJ8)
2020/02/12(水) 20:58:54.89ID:3+kd1fAQ0 Haskellって最先端なんか?
凄い古い言語って印象だけど
凄い古い言語って印象だけど
589デフォルトの名無しさん (ワッチョイ 7335-OxJ8)
2020/02/12(水) 21:04:01.64ID:3+kd1fAQ0 >>587
ゲーム作成には不向きだったな。ありゃーキツかった
あと機械学習にもまるで向いてない。vbaは内部的にシングルコア臭い。
通常の事務用途なら普通に最強なのは言うまでもないので、あえてそれを言ってないだけではないんだろうかね
ゲーム作成には不向きだったな。ありゃーキツかった
あと機械学習にもまるで向いてない。vbaは内部的にシングルコア臭い。
通常の事務用途なら普通に最強なのは言うまでもないので、あえてそれを言ってないだけではないんだろうかね
590デフォルトの名無しさん (アウアウエー Saaa-GUQA)
2020/02/12(水) 21:16:37.85ID:yl8WS00pa 関数型言語だから最新ではなくとも先端だと思うけどな
591デフォルトの名無しさん (ワッチョイ 7335-OxJ8)
2020/02/12(水) 21:22:44.30ID:3+kd1fAQ0 あぁ先端か、最新とごっちゃになったよスマン
592デフォルトの名無しさん (ワッチョイ 838e-k5Lv)
2020/02/12(水) 22:17:27.48ID:Tv6jd7oA0 >>582
馬鹿は死ねよ
馬鹿は死ねよ
593デフォルトの名無しさん (ワッチョイ 1279-F4sO)
2020/02/13(木) 00:45:56.80ID:k/bVZGqk0594デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/13(木) 03:14:24.86ID:r2M7N5Eg0 VBAの利点なんてExcelに標準で載ってる以外にないだろ
まあその利点が大きすぎて他ので代替できないんだけど
はやくTypeScriptあたりが標準にならねーかな
まあその利点が大きすぎて他ので代替できないんだけど
はやくTypeScriptあたりが標準にならねーかな
595デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/13(木) 07:45:49.49ID:u4d6QES9d Excelが起動してない状態ならどんな言語でも良い。
そもそもVBA使えないし。
でも、Excel起動した状態で、わざわざ別言語呼び出すのは糞だろ。
VBAが使える環境ってのは競合がいない。
そもそもVBA使えないし。
でも、Excel起動した状態で、わざわざ別言語呼び出すのは糞だろ。
VBAが使える環境ってのは競合がいない。
596デフォルトの名無しさん (ワッチョイ 122c-LiuO)
2020/02/13(木) 11:47:37.56ID:AalEMFde0 Excel は、web プログラミングに対応していないから、
ウェブアプリでは、データベース・CSV の方がよい
そうすると、Ruby, Python, Julia で、
VSCode, Jupyter Notebook で処理できる
ローカルPC 内だけで処理できない場合は、他の言語がよい
ウェブアプリでは、データベース・CSV の方がよい
そうすると、Ruby, Python, Julia で、
VSCode, Jupyter Notebook で処理できる
ローカルPC 内だけで処理できない場合は、他の言語がよい
597デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/13(木) 15:06:53.86ID:r2M7N5Eg0598デフォルトの名無しさん (スプッッ Sd32-NAxV)
2020/02/13(木) 15:35:27.13ID:3ooJhDB3d 専用アプリがたくさん出てきた今じゃエクセルなんてメモ帳くらいしか使わなくなった
この先もなるならんと思うけど用途は縮小されるだろうな
この先もなるならんと思うけど用途は縮小されるだろうな
599デフォルトの名無しさん (アークセー Sxc7-nMLd)
2020/02/13(木) 19:19:57.68ID:h5k0eGtyx スレ違いかもしれませんが、VSTOってどうなんでしょうか
よく使われているのですか?
よく使われているのですか?
600デフォルトの名無しさん (ワッチョイ af68-OxJ8)
2020/02/13(木) 21:34:00.53ID:K4OvKims0601デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/14(金) 03:17:43.34ID:khV78Z7h0 いつものruby厨が糞なのはわかるが年末にメジャーアップデートしたばかりだよ!
602デフォルトの名無しさん (アウアウウー Sac3-eKU0)
2020/02/14(金) 12:24:19.36ID:loUY2HXBa >>599
使う人は使うだろう
使う人は使うだろう
603デフォルトの名無しさん (ワッチョイ b7f1-pc6R)
2020/02/14(金) 13:53:47.99ID:6u1vRBgq0 PHPでいいのにRuby
JavaでいいのにKotlin
余計なもの作りすぎてやしないか?
学習しないといけない選択肢や実際に学習しないといけないリスクが増える。
OSにおけるWindowsに対抗したMac
ワープロのWordに対抗した一太郎
スマホにおけるAndroidに対抗したiPhone
にも同等のことが言える
JavaでいいのにKotlin
余計なもの作りすぎてやしないか?
学習しないといけない選択肢や実際に学習しないといけないリスクが増える。
OSにおけるWindowsに対抗したMac
ワープロのWordに対抗した一太郎
スマホにおけるAndroidに対抗したiPhone
にも同等のことが言える
604デフォルトの名無しさん (ブーイモ MMdb-OxJ8)
2020/02/14(金) 14:24:36.22ID:yzfFAhi1M605デフォルトの名無しさん (アウアウクー MM07-bduJ)
2020/02/14(金) 14:55:02.63ID:oTRYZ3a7M PHPでよくないしJavaでよくなかったから新しいものが作られるのは当然
606596 (ワッチョイ 122c-LiuO)
2020/02/14(金) 15:48:59.78ID:+9NDg3r60 未だに、Webサイトの最高速度は、Ruby on Rails。
他の言語は複雑だから、高コストで低品質になるw
表示速度が“異常な”Webサイト「dev.to」とか
https://dev.to/
元乃木坂46 の川後陽菜のWebサイト、SKIYAKI とか
https://kawagopro.com/
他の言語は複雑だから、高コストで低品質になるw
表示速度が“異常な”Webサイト「dev.to」とか
https://dev.to/
元乃木坂46 の川後陽菜のWebサイト、SKIYAKI とか
https://kawagopro.com/
607デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/14(金) 19:06:02.89ID:fyxPtfni0 日本語不便だから簡素化しよう → わかる
日本語不便だからZ国語を作ろう → 意味不明
日本語不便だからZ国語を作ろう → 意味不明
608デフォルトの名無しさん (ワッチョイ 1279-F4sO)
2020/02/14(金) 19:36:15.93ID:xdYnDj0z0 おれ今は何でもpowershell
.NETやWin32API呼べるしね
.NETやWin32API呼べるしね
609デフォルトの名無しさん (ワッチョイ ebce-OxJ8)
2020/02/14(金) 19:39:20.92ID:4wjLsdfS0610デフォルトの名無しさん (ワッチョイ af68-OxJ8)
2020/02/14(金) 20:40:36.45ID:fYXT+aFT0 >>606
何の機能も無いんだからそりゃ早くて当たり前だ
何の機能も無いんだからそりゃ早くて当たり前だ
611デフォルトの名無しさん (ワッチョイ 02ba-bbsC)
2020/02/14(金) 22:25:32.83ID:zOM6NzfF0612デフォルトの名無しさん (ワッチョイ e791-If3t)
2020/02/15(土) 11:21:56.89ID:AUuvC6yh0613デフォルトの名無しさん (ワッチョイ e791-If3t)
2020/02/15(土) 11:25:02.18ID:AUuvC6yh0 >>599
それはアリだ。
会社内で使える環境、積極的に使っていく環境なら大いに活用すべし。
ただ、VSTOって名前は今でもその名前で良いのか?
もはや、名前なんて無くなった感覚だな。
俺も個人的に使ってる。
それはアリだ。
会社内で使える環境、積極的に使っていく環境なら大いに活用すべし。
ただ、VSTOって名前は今でもその名前で良いのか?
もはや、名前なんて無くなった感覚だな。
俺も個人的に使ってる。
614デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/15(土) 14:20:57.52ID:0SWjbLN40615デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 17:13:03.49ID:Lm2T2Naqd >>614
例えば、VBSからVBAを呼び出し、VBA経由でWin32APIを呼び出す。
VBAからShell関数で別exeを呼び出し、そのexeはtxtファイルを残すように作成されており、そのtxtファイルの内容を見て連携する。
あるフォルダを常に監視するプログラムが動いており、そのフォルダにファイルが置かれると其れを読んで動作するプログラムがある。別のプログラムがそのフォルダに指示するファイルを置いて連携する。
どれも、仕方なくそういうプログラムを書くことがある。
しかし、こういうピタゴラスイッチのようなシステムは汚い。
1言語で完結する方が良いのは明らかだ。
そんなこともわからない奴は素養が無い。
動けば良いなんて考えの奴とは組みたく無いね。
スパゲッティで炎上案件必至だ。
例えば、VBSからVBAを呼び出し、VBA経由でWin32APIを呼び出す。
VBAからShell関数で別exeを呼び出し、そのexeはtxtファイルを残すように作成されており、そのtxtファイルの内容を見て連携する。
あるフォルダを常に監視するプログラムが動いており、そのフォルダにファイルが置かれると其れを読んで動作するプログラムがある。別のプログラムがそのフォルダに指示するファイルを置いて連携する。
どれも、仕方なくそういうプログラムを書くことがある。
しかし、こういうピタゴラスイッチのようなシステムは汚い。
1言語で完結する方が良いのは明らかだ。
そんなこともわからない奴は素養が無い。
動けば良いなんて考えの奴とは組みたく無いね。
スパゲッティで炎上案件必至だ。
616デフォルトの名無しさん (ワッチョイ 1e68-wj5n)
2020/02/15(土) 17:32:31.69ID:w0AGl45A0617デフォルトの名無しさん (ワッチョイ 1e68-wj5n)
2020/02/15(土) 17:34:00.99ID:w0AGl45A0 そのプロセス毎に言語が違って余計な手間が増えるのも非効率だな
618デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/15(土) 18:20:20.91ID:0SWjbLN40619デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 18:27:08.22ID:Lm2T2Naqd620デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 18:27:51.31ID:Lm2T2Naqd こっちの主旨も伝わらないとはねw
621デフォルトの名無しさん (ワッチョイ 16f2-oFCC)
2020/02/15(土) 18:33:14.64ID:8KFvWLo00 ググルのスプレッドシートってまだまだだねぇ・・・
Excelの完成度の高い操作性に慣れると、あんなの使ってらんねーわ・・・
Excelの完成度の高い操作性に慣れると、あんなの使ってらんねーわ・・・
622デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/15(土) 19:16:30.13ID:OXybc0Po0 あれはGoogleのAPIを使いたい時用。
623デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/15(土) 19:16:36.07ID:0SWjbLN40624デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 20:04:11.40ID:Lm2T2Naqd625デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 20:27:26.64ID:Lm2T2Naqd626デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/15(土) 20:46:44.54ID:0SWjbLN40 自分でも書かないような極端な事例を勝手に出してそれに対してマウントとるオナニー気持ちいい?
コミュニケーションの素養も無いね
コミュニケーションの素養も無いね
627デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 21:00:26.03ID:Lm2T2Naqd628デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 21:02:22.67ID:Lm2T2Naqd ちなみに、極端でも無いのは上司や他メンバーが提案したことからも明らかだが。
糞だけど実際にはそんな事例は結構ある。
糞だけど実際にはそんな事例は結構ある。
629デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/15(土) 22:00:26.34ID:0SWjbLN40 >>627
それは糞ではない
それは糞ではない
630デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 22:13:15.78ID:Lm2T2Naqd631デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/15(土) 22:30:05.36ID:0SWjbLN40 >>630
素養って言葉使うのやめたの?
素養って言葉使うのやめたの?
632デフォルトの名無しさん (スップ Sd52-If3t)
2020/02/15(土) 22:51:41.05ID:Lm2T2Naqd >>631
プw
プw
633デフォルトの名無しさん (ワッチョイ dfda-K2Xq)
2020/02/15(土) 22:54:09.55ID:K8Q8SzUI0 横からだけど
VBAでは足りないことが多いし、言語も冗長でできれば書きたくない言語
けど、気持ちは分かるわ。自分もエクセル神、VBA最強と思ってた時期があったw
VBAでは足りないことが多いし、言語も冗長でできれば書きたくない言語
けど、気持ちは分かるわ。自分もエクセル神、VBA最強と思ってた時期があったw
634デフォルトの名無しさん (ワッチョイ c2eb-GUQA)
2020/02/15(土) 23:04:02.01ID:DNF/C+cP0 よろしくお願いします。
A1からA500まで順に走査し、セルの値が「あ」「い」「う」「え」「お」のいずれかなら同行のB列に「OK」と書く
↑
こういう命令を書きたいのですが、
if ws.cells(row,1)="あ" or ws.cells(row,1)="い" or ws.cells(row,1)="う" or ws.cells(row,1)="え" … then
という書き方しかしりません。
たぶん、
「セルの値が「あ、い、う、え、お」のどれかの場合は、」という書き方があるんじゃないかと思います。
ひとつひとつORで並べるんじゃなくて、そのように書くにはどうすればよいのでしょうか?
教えてください。
A1からA500まで順に走査し、セルの値が「あ」「い」「う」「え」「お」のいずれかなら同行のB列に「OK」と書く
↑
こういう命令を書きたいのですが、
if ws.cells(row,1)="あ" or ws.cells(row,1)="い" or ws.cells(row,1)="う" or ws.cells(row,1)="え" … then
という書き方しかしりません。
たぶん、
「セルの値が「あ、い、う、え、お」のどれかの場合は、」という書き方があるんじゃないかと思います。
ひとつひとつORで並べるんじゃなくて、そのように書くにはどうすればよいのでしょうか?
教えてください。
635デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/15(土) 23:28:52.14ID:UxF7uCH30 select case a
case "あ","い","う","え","お"
cells (i,j) = "OK"
end select
case "あ","い","う","え","お"
cells (i,j) = "OK"
end select
636デフォルトの名無しさん (ワッチョイ c2eb-GUQA)
2020/02/15(土) 23:41:20.13ID:DNF/C+cP0 >>635
ありがとうございました!!
ありがとうございました!!
637デフォルトの名無しさん (ワッチョイ 1f94-NAxV)
2020/02/16(日) 01:36:16.88ID:hu3zE7F/0 そもそも他言語使うのにエクセルシートを開くのがダサい
638デフォルトの名無しさん (アウアウクー MM07-bduJ)
2020/02/16(日) 05:43:51.26ID:UuI8sGIrM pythonでもjsでもいいからさっさとVBA廃止して欲しいわ
639デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/16(日) 06:57:36.74ID:v3JJWFtt0 使わなけりゃいいのに
640デフォルトの名無しさん (スプッッ Sd32-NAxV)
2020/02/16(日) 07:30:58.53ID:G5lQpk7Jd VBAを使ってるって人に言うのが恥ずかしい
641デフォルトの名無しさん (ワッチョイ 1e68-wj5n)
2020/02/16(日) 09:18:13.09ID:1S/Tig2+0 VBAアレルギーがこのスレにいるのが恥ずかしい
642デフォルトの名無しさん (ワッチョイ 7705-WmGm)
2020/02/16(日) 09:39:35.57ID:qdCD1uit0 VBAよく使うし便利なんだけど嫌われている理由って何?
643デフォルトの名無しさん (アウアウウー Sac3-cpkQ)
2020/02/16(日) 10:08:05.95ID:+qE5f9v2a >>642
出来る人が多くなると自慢にならない
出来る人が多くなると自慢にならない
644デフォルトの名無しさん (ワッチョイ 1ef7-7PUH)
2020/02/16(日) 11:01:43.69ID:U1tPq90o0 >>642
いつ切り捨てられるかわからないストレスの反動
いつ切り捨てられるかわからないストレスの反動
645デフォルトの名無しさん (ワッチョイ a37c-hIB2)
2020/02/16(日) 13:09:01.06ID:tByZLPoS0 >>642
アンチがうるさいだけ
アンチがうるさいだけ
646デフォルトの名無しさん (ワッチョイ 7705-WmGm)
2020/02/16(日) 13:21:44.77ID:qdCD1uit0 最先端を追っかけて一般に広がったらダサく見えちゃう人のパターン?
647デフォルトの名無しさん (アウアウウー Sac3-GUQA)
2020/02/16(日) 13:46:18.68ID:onfJSXj2a 使いこなせないけどとりあえずスカラー使っとけばマウント取れるという風潮
648デフォルトの名無しさん (ブーイモ MMdb-hiG3)
2020/02/16(日) 13:54:18.04ID:gXg/oo9KM スカラーってなぁに?
649デフォルトの名無しさん (ワッチョイ b7f1-pc6R)
2020/02/16(日) 14:33:37.03ID:OOULfQDL0 オナラを音を出さずにする人のこと
650デフォルトの名無しさん (アウアウクー MM07-bduJ)
2020/02/16(日) 14:49:07.22ID:myP/3poOM >>642
言語仕様が古臭すぎる
モダンな便利な仕組みが使えないしデフォルトの関数やライブラリも貧弱
Excelっていう表を使うのにリスト周りの機能が劣悪なのが個人的に最高に糞
sortやfilter、mapぐらいは用意しといてくれ
言語仕様が古臭すぎる
モダンな便利な仕組みが使えないしデフォルトの関数やライブラリも貧弱
Excelっていう表を使うのにリスト周りの機能が劣悪なのが個人的に最高に糞
sortやfilter、mapぐらいは用意しといてくれ
651デフォルトの名無しさん (ワッチョイ e791-If3t)
2020/02/16(日) 17:03:22.19ID:crcHCgfv0 Excelは神じゃないし、VBAも別に古くないなんて言わない。
でも、VBAを使う場合では他に選択肢が無い。
他のモダンな言語使ってダサさ極まりないプログラムを書くことになる。
Excelを介さずにExcelのファイル作る場合ではVBAはお呼びじゃ無いし、Excelを介して何かする場合はVBA以外がダサイプログラムとなる。
でも、VBAを使う場合では他に選択肢が無い。
他のモダンな言語使ってダサさ極まりないプログラムを書くことになる。
Excelを介さずにExcelのファイル作る場合ではVBAはお呼びじゃ無いし、Excelを介して何かする場合はVBA以外がダサイプログラムとなる。
652デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/16(日) 17:23:12.06ID:bd16la8D0 だよな
VBAでIE操作するなんてダッサイよな
Excel VBAでWord操作するなんてもっての外だ
VBAでIE操作するなんてダッサイよな
Excel VBAでWord操作するなんてもっての外だ
653デフォルトの名無しさん (ワッチョイ b7f1-pc6R)
2020/02/16(日) 17:37:11.50ID:OOULfQDL0 >>651
日本語を
日本語を
654デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/16(日) 19:45:47.28ID:264B3TMP0 それはVBAでIEを操作したいんじゃなくて、
取り出したデータをシートに書き込みたいからVBAなんだよ。
取り出したデータをシートに書き込みたいからVBAなんだよ。
655デフォルトの名無しさん (ワッチョイ 63b0-bduJ)
2020/02/16(日) 20:02:56.16ID:bd16la8D0 pythonでExcelを操作したいんじゃなくてpythonで弄ったデータをシートに書き込みたいからWin32APIなんだよ
656デフォルトの名無しさん (ワッチョイ 9242-oncu)
2020/02/16(日) 20:46:33.79ID:YpWFdUlV0 >>648
しめつけ痴漢ビームだろ
しめつけ痴漢ビームだろ
657デフォルトの名無しさん (ベーイモ MM6e-kAsV)
2020/02/17(月) 17:50:27.95ID:vNEYHF2AM VBAはコレクションが貧弱すぎ
そしてVBの言語仕様が大嫌い
そしてVBの言語仕様が大嫌い
658デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/17(月) 18:40:54.09ID:Pe28e1YX0 ちょっとそれ詳しく
659デフォルトの名無しさん (ワッチョイ 1f48-zeWM)
2020/02/18(火) 03:35:58.54ID:TF8ZYXaL0 VBAに継承があったら、もっと楽しくコード書けるのになあ
660デフォルトの名無しさん (アークセー Sxc7-cNiL)
2020/02/18(火) 06:20:13.81ID:8hbClqqAx クラスはサポートしてるのに継承がなくてポリモーフィズムしか使えないからね
クラスを作るのが面倒で仕方ない
クラスを作るのが面倒で仕方ない
661デフォルトの名無しさん (ドコグロ MMea-2sCL)
2020/02/18(火) 07:31:23.14ID:EfyTSHg3M せめてコンストラクタ(VBAだとInitialize)の引数は欲しかったわ
662デフォルトの名無しさん (アウアウウー Sac3-cpkQ)
2020/02/18(火) 10:24:05.40ID:6ZsCABKsa 良くわからないんだがexcelに必要か?
663デフォルトの名無しさん (ワッチョイ b740-qH/C)
2020/02/18(火) 13:47:20.72ID:chdQR5M40 excelが必要か?に見えた
664デフォルトの名無しさん (スプッッ Sd52-K0qH)
2020/02/18(火) 18:45:59.17ID:/5Mxz8ykd CADで書いたデータをDXFにしてメモ帳で開いて読み取って、エクセルシートにオートシェイプで書いたんですが、円の中にテキストがあるやつのみグループ化したいんですがいい方法ありますか?
調べると座標点から追ってみたいな方法しかないですか?
調べると座標点から追ってみたいな方法しかないですか?
665デフォルトの名無しさん (ワッチョイ cbda-OxJ8)
2020/02/18(火) 21:01:24.57ID:F3RpBkgw0 自分の仕事くらい自力でやれば?
>>659-660
継承は愚策であることが判明しているのでは?継承よりも委譲をつかいなしあ
継承は愚策であることが判明しているのでは?継承よりも委譲をつかいなしあ
667デフォルトの名無しさん (ワッチョイ 93da-Nz9x)
2020/02/19(水) 19:57:26.16ID:mzzoJTJv0 VBAよりpythonの方が実行速度が速いなら使ってもいいが、そうじゃないんだろ?
668デフォルトの名無しさん (ワッチョイ 73b0-y94j)
2020/02/19(水) 21:51:44.49ID:kwCZcDbv0 マクロの実行速度なんてほぼExcel側で決まるんだから言語変わっても変わるわけないだろ
そもそもたかがExcelのマクロに実効速度とか要求するか?
そもそもたかがExcelのマクロに実効速度とか要求するか?
669デフォルトの名無しさん (ワッチョイ 93da-Nz9x)
2020/02/19(水) 22:21:56.27ID:mzzoJTJv0 ん、いや、pythonに何かしらメリットがなきゃ、乗り換える意味なんてないよなと思って。
670デフォルトの名無しさん (アウアウクー MM07-y94j)
2020/02/19(水) 23:50:48.47ID:IiRLq+jSM VBA使わなくていいっていう最大のメリットが
671デフォルトの名無しさん (アウアウエー Sadf-2bhW)
2020/02/19(水) 23:58:20.17ID:FWuAEXxDa VBAがないなら もうWindowsを使う意味はないってユーザーも多いのでは
672デフォルトの名無しさん (ワッチョイ 13ce-Nz9x)
2020/02/20(木) 00:18:21.99ID:AoQGP1nv0 手作業で数式を入れるだけならオンラインのスプレッドシートで十分だもんな
673デフォルトの名無しさん (オッペケ Sr07-joR1)
2020/02/20(木) 06:08:18.51ID:L/aFoY2Cr スプシでネイティブアプリ並の速度でかつVBAが使えれば言うことないんだけど
674デフォルトの名無しさん (ドコグロ MM1f-P13C)
2020/02/20(木) 06:43:28.49ID:2rLj+nIZM675デフォルトの名無しさん (ワッチョイ 737c-3FYl)
2020/02/20(木) 07:44:40.62ID:D4QlVP2L0 端末にPythonインストールされてないし使えない。
676デフォルトの名無しさん (ワッチョイ 4301-Nz9x)
2020/02/20(木) 12:18:14.02ID:IgUrfnDG0 っていうかPythonつかうならVB.netでいいんじゃないの??
C#でもいいし。
C#でもいいし。
677デフォルトの名無しさん (ドコグロ MM1f-P13C)
2020/02/20(木) 12:52:29.82ID:2rLj+nIZM678デフォルトの名無しさん (ワッチョイ 93da-Nz9x)
2020/02/20(木) 19:50:27.27ID:oaOtGalk0 Excel VBAスレでpython信者が何いってもねw
679デフォルトの名無しさん (ワッチョイ 4301-KfDg)
2020/02/20(木) 22:25:17.20ID:Gh4fiqHN0 エクセル中心でやりたいことはvbaでも十分だよ
何かの作業のほんの一部にエクセル使うときは、そもそもエクセルをフレームワークとして使うこと自体間違ってる
何かの作業のほんの一部にエクセル使うときは、そもそもエクセルをフレームワークとして使うこと自体間違ってる
680デフォルトの名無しさん (ワッチョイ ff02-p4c1)
2020/02/21(金) 21:53:28.61ID:pWRsPetz0 得ろサイトの動画や画像を根こそぎゲットするためにサイトの解析してるんだけど
ソースにないリンク(javaとかで生成されたリンク)ってVBAで取得できるの?
ソースにないリンク(javaとかで生成されたリンク)ってVBAで取得できるの?
681デフォルトの名無しさん (ワッチョイ 13ce-Nz9x)
2020/02/22(土) 02:17:27.01ID:MTp4jPgj0 >>680
サイトごとに画像ファイルのデータベースの作りが違うから、不可能じゃないけどかなり面倒
画像のURLのパターンを調べるだけなら既成のアプリでパケットキャプチャしたり、自動運転してフラウザのキャッシュから拾った方が早い
エロサイトスクレイピングの最大の問題は、サイトの解析に夢中になるあまり、抜いてないのに疲れて賢者モードになってしまうこと
サイトごとに画像ファイルのデータベースの作りが違うから、不可能じゃないけどかなり面倒
画像のURLのパターンを調べるだけなら既成のアプリでパケットキャプチャしたり、自動運転してフラウザのキャッシュから拾った方が早い
エロサイトスクレイピングの最大の問題は、サイトの解析に夢中になるあまり、抜いてないのに疲れて賢者モードになってしまうこと
682デフォルトの名無しさん (ブーイモ MMff-Nz9x)
2020/02/22(土) 02:26:26.53ID:/4ot1EkTM そういうのは、いつのまにかダウンロードが目的になってしまう
大量の画像を一気にゲットしても99%は好みじゃないから、どうせ見ないよ
大量の画像を一気にゲットしても99%は好みじゃないから、どうせ見ないよ
683デフォルトの名無しさん (スップ Sd1f-ftqI)
2020/02/22(土) 03:41:31.80ID:ksAsfwMgd VBAでする必要ある?
会社の事務作業に必要?
会社の事務作業に必要?
684デフォルトの名無しさん (ワッチョイ ff2c-lQWV)
2020/02/22(土) 13:58:35.37ID:qQaAG+8d0 漏れは、スクレイピングは、Ruby, Selenium WebDriver, Nokogiri を使うけど、
各サイトの解析が大変
例えば、5ch の投稿から画像ファイルだけを探すのに、
「div.message a」内のURL で、拡張子が「png jpg jpeg gif」のものだけを絞り込むとか、
こういう処理を、VBA で書くのは辛い
可読性が高い、Rubyなどを使わないと面倒
各サイトの解析が大変
例えば、5ch の投稿から画像ファイルだけを探すのに、
「div.message a」内のURL で、拡張子が「png jpg jpeg gif」のものだけを絞り込むとか、
こういう処理を、VBA で書くのは辛い
可読性が高い、Rubyなどを使わないと面倒
685デフォルトの名無しさん (ワッチョイ 93da-Nz9x)
2020/02/22(土) 18:55:32.50ID:VWTN01Wl0 >>684
5chで探すとグロと宣伝の同じ画像だらけで集める意味ないとおもう
5chで探すとグロと宣伝の同じ画像だらけで集める意味ないとおもう
686デフォルトの名無しさん (スップ Sd1f-n138)
2020/02/22(土) 20:40:32.07ID:CpuGABtnd >>684
VBAでも簡単だけどな。
というか、世の中のスクレイピング見てると随分テキトーだなと思うね。
ページ内のタグ1つ1つをごっそり取ってくる処理書ければ、絞りこむ方法なんて簡単だろ。
どっちにしろ、スクレイピングなんて初心者とは言わないが、その程度の話。
情報なんてゴマンと有るんだから。
VBAでも簡単だけどな。
というか、世の中のスクレイピング見てると随分テキトーだなと思うね。
ページ内のタグ1つ1つをごっそり取ってくる処理書ければ、絞りこむ方法なんて簡単だろ。
どっちにしろ、スクレイピングなんて初心者とは言わないが、その程度の話。
情報なんてゴマンと有るんだから。
687デフォルトの名無しさん (スップ Sd1f-icXw)
2020/02/23(日) 00:38:51.54ID:jVAo1XvKd jsonから動的にHTMLを生成するページだとjsonファイルのURLを調べるのが面倒
そのままソースには書いてないことも多いし
そのままソースには書いてないことも多いし
688デフォルトの名無しさん (ワッチョイ 93da-Nz9x)
2020/02/23(日) 03:39:39.65ID:DZYqUxJ90 Ruby使いは画像収集家なのかご苦労様
689デフォルトの名無しさん (ワッチョイ a3ae-QtOM)
2020/02/23(日) 04:26:11.00ID:K7fXFWfL0 VBAちょっと触ってみたけど難しいね
書き方独特すぎてちょっときつい
書き方独特すぎてちょっときつい
690デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 06:38:50.97ID:wq/R6u2w0 VBAが独特って日頃どんな言語使ってるんだ…
691デフォルトの名無しさん (スップ Sd1f-ftqI)
2020/02/23(日) 07:12:19.53ID:FxSnKpMed 独特と言うか構文が長くて繰り返しが多い
692デフォルトの名無しさん (アウアウエー Sadf-JxPc)
2020/02/23(日) 07:15:28.16ID:/TUwZlyEa いじめられっ子VBA
693デフォルトの名無しさん (ワッチョイ ff02-p4c1)
2020/02/23(日) 07:35:03.32ID:+eBIvQNk0694デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/23(日) 07:46:27.78ID:unOBnpssx [VBA]
Dim str As String: str = "hoge"
[VB.NET]
Dim str As String = "hoge"
[Java,C# その他]
string str = "hoge";
まぁ確かにVBAは冗長で繰り返し多いわな
If Then構文もThen書かせるなと思うし
Dim str As String: str = "hoge"
[VB.NET]
Dim str As String = "hoge"
[Java,C# その他]
string str = "hoge";
まぁ確かにVBAは冗長で繰り返し多いわな
If Then構文もThen書かせるなと思うし
695デフォルトの名無しさん (ワッチョイ 93da-Nz9x)
2020/02/23(日) 08:19:14.23ID:hlUaoTwd0 コンストだと真ん中みたいに書けるのにな。
696デフォルトの名無しさん (ワッチョイ ffea-C6+A)
2020/02/23(日) 08:27:54.12ID:sbceR+SQ0 文字列から組み込み定数の値を取得する事は出来ますか?
例)”rgbRed" -> 255
例)”rgbRed" -> 255
697デフォルトの名無しさん (ワッチョイ 4301-+607)
2020/02/23(日) 08:31:22.34ID:pFS6OxI+0 [VBA]
Dim str$: str = "hoge"
[VB.NET]
Dim str$ = "hoge"
[Java,C# その他]
string str = "hoge";
大差ないな
そもそも文字数の差なんて全体から見たら誤差みたいなもんだ
Dim str$: str = "hoge"
[VB.NET]
Dim str$ = "hoge"
[Java,C# その他]
string str = "hoge";
大差ないな
そもそも文字数の差なんて全体から見たら誤差みたいなもんだ
698デフォルトの名無しさん (ワッチョイ 13ce-Nz9x)
2020/02/23(日) 08:48:22.46ID:m7teXSWT0 VBAならDimステートメントは省略できるからもっと文字数を減らせる
699デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 08:52:41.96ID:wq/R6u2w0700デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/23(日) 08:58:08.06ID:unOBnpssx >>697
どうかね、タイプ量って生産性に直結するのだが
そもそもVBAの型宣言文字ってごく一部のプリミティブ型にしか割り当てられてないじゃん
Class1 cls = new Class1(param);
の一行で変数宣言、引数付きコンストラクタへの引数付与、インスタンス生成代入が同時に出来るのは便利だぞ
それに慣れてしまったら、
Dim cls As Class1
Set cls = New Class1
cls.Init(param)
みたいにVBAでやるのが馬鹿らしくなる
どうかね、タイプ量って生産性に直結するのだが
そもそもVBAの型宣言文字ってごく一部のプリミティブ型にしか割り当てられてないじゃん
Class1 cls = new Class1(param);
の一行で変数宣言、引数付きコンストラクタへの引数付与、インスタンス生成代入が同時に出来るのは便利だぞ
それに慣れてしまったら、
Dim cls As Class1
Set cls = New Class1
cls.Init(param)
みたいにVBAでやるのが馬鹿らしくなる
701デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 09:00:12.99ID:wq/R6u2w0 >>696
いま手元に環境ないから試せないけどApplication.Evaluate("rgbRed")とかでできないかな?
いま手元に環境ないから試せないけどApplication.Evaluate("rgbRed")とかでできないかな?
702デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 09:03:59.50ID:wq/R6u2w0703デフォルトの名無しさん (ワッチョイ ffea-C6+A)
2020/02/23(日) 09:08:06.54ID:sbceR+SQ0 >>701
Evaluateでは評価できませんでした。
Evaluateでは評価できませんでした。
704デフォルトの名無しさん (アウアウエー Sadf-JxPc)
2020/02/23(日) 09:08:57.81ID:/TUwZlyEa 文字数そんなに重要?
705デフォルトの名無しさん (ワッチョイ 8340-KfDg)
2020/02/23(日) 09:12:15.33ID:KMj3XtMO0706デフォルトの名無しさん (ワッチョイ 13ce-Nz9x)
2020/02/23(日) 09:23:07.17ID:m7teXSWT0 定数名(文字列)から値を得るのって、昔はtlbinf32.dllでできたんだけどWindows10でなくなっちゃったんだよね
GetExportedTypesでできそうなんだけど、すぐに使えるサンプルがネット上には見当たらない
あとはVBAのソースをテキストファイルに書いてインポートとか
GetExportedTypesでできそうなんだけど、すぐに使えるサンプルがネット上には見当たらない
あとはVBAのソースをテキストファイルに書いてインポートとか
707デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/23(日) 09:26:18.22ID:unOBnpssx >>702
その書き方はJava等で一行でインスタンスを生成代入するのとは意味が違うので、比較対象にならない
有名な話だけど、DimステートメントでNewを付加した場合、Nothingで一度参照破棄しても変数を評価する度に新しいインスタンス参照が生成代入されるので、以下のようなコードがコンパイルエラーにならない
非常識な挙動なのでMSも非推奨と言ってるし、いまどき使うのはアウト
Sub Test()
Dim C1 As New Collection
Set C = Nothing
C.Add "エラーにならない"
End Sub
その書き方はJava等で一行でインスタンスを生成代入するのとは意味が違うので、比較対象にならない
有名な話だけど、DimステートメントでNewを付加した場合、Nothingで一度参照破棄しても変数を評価する度に新しいインスタンス参照が生成代入されるので、以下のようなコードがコンパイルエラーにならない
非常識な挙動なのでMSも非推奨と言ってるし、いまどき使うのはアウト
Sub Test()
Dim C1 As New Collection
Set C = Nothing
C.Add "エラーにならない"
End Sub
708デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/23(日) 09:28:01.95ID:unOBnpssx >>707
間違えた、Set C1 = Nothingだな
間違えた、Set C1 = Nothingだな
709デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 09:30:04.09ID:wq/R6u2w0710デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 09:31:22.21ID:wq/R6u2w0 >>704
コーダーレベルの人には重要なんだろうねw
コーダーレベルの人には重要なんだろうねw
711デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/23(日) 09:34:37.47ID:unOBnpssx >>709
機能や挙動が等価でない構文を並べてタイプ量を比べても意味がないだろ
機能や挙動が等価でない構文を並べてタイプ量を比べても意味がないだろ
712デフォルトの名無しさん (ワッチョイ 8340-KfDg)
2020/02/23(日) 09:56:51.02ID:KMj3XtMO0713デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 09:57:00.88ID:wq/R6u2w0714デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 10:00:28.85ID:wq/R6u2w0715デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/23(日) 10:02:34.10ID:unOBnpssx >>713
タイプ量はステップ数やコードの可読性低下、人件費とほぼ正相関するので、オーバーヘッド抑制のために下流はもちろん中流以上のPMクラスでもケアしなきゃならない基本中の基本だぞ
いつの時代も変わらない
タイプ量はステップ数やコードの可読性低下、人件費とほぼ正相関するので、オーバーヘッド抑制のために下流はもちろん中流以上のPMクラスでもケアしなきゃならない基本中の基本だぞ
いつの時代も変わらない
716デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 10:22:38.92ID:wq/R6u2w0 まだこんな老害がいるんだな…
変数名は1文字に限るとか?w
変数名は1文字に限るとか?w
717デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/23(日) 11:03:51.11ID:unOBnpssx 読解力皆無で笑える
718デフォルトの名無しさん (ワッチョイ ffea-C6+A)
2020/02/23(日) 12:08:50.82ID:sbceR+SQ0 >>706
変換テーブルでも用意するしかないですかね。
変換テーブルでも用意するしかないですかね。
719デフォルトの名無しさん (ワッチョイ ff01-P13C)
2020/02/23(日) 12:47:04.17ID:wq/R6u2w0 >>717
揶揄されてることも理解できないとか可哀想ですらあるw
揶揄されてることも理解できないとか可哀想ですらあるw
720デフォルトの名無しさん (ワッチョイ 4391-n138)
2020/02/23(日) 16:21:03.27ID:dmBvCqf60 タイプ量ってwww
いつの時代だよ。
というか、タイプ量少ない奴は寧ろ組みたく無いわな。
頓珍漢なロジックで余計なことやってることでタイプ量がが増えたので無い限り、そんなもん気にするバカは真っ先に要らない。
いつの時代だよ。
というか、タイプ量少ない奴は寧ろ組みたく無いわな。
頓珍漢なロジックで余計なことやってることでタイプ量がが増えたので無い限り、そんなもん気にするバカは真っ先に要らない。
721デフォルトの名無しさん (スッップ Sd1f-ftqI)
2020/02/23(日) 16:41:58.26ID:EF3UNxNad そもそもVBAは構文が長いって話なのに
プログラム全体で見てば間違いなく長くなる
でタイプ量の話は流れの中で出て来た少ない方が良いよね程度の事なのに絡まれてる人が気の毒だわ
プログラム全体で見てば間違いなく長くなる
でタイプ量の話は流れの中で出て来た少ない方が良いよね程度の事なのに絡まれてる人が気の毒だわ
722デフォルトの名無しさん (ドコグロ MMdf-P13C)
2020/02/23(日) 17:21:12.88ID:ot72o1TpM723デフォルトの名無しさん (ワッチョイ 6f68-AE6u)
2020/02/23(日) 17:46:51.73ID:tUguP7M50 デジャヴかと思ったら
>>565再来なん?
>>565再来なん?
724デフォルトの名無しさん (ドコグロ MMdf-P13C)
2020/02/23(日) 18:31:17.82ID:ot72o1TpM >>565自体が最小構成ソースとかのオレオレ用語で意味不明なので再来かどうかもわからん
725デフォルトの名無しさん (ワッチョイ ffb0-y94j)
2020/02/23(日) 18:38:52.53ID:YcvTMcMQ0 構文レベルのタイプ数の多さはまともなIDEがあれば気にならない
つまりExcelのVBA環境だとゴミクズ
つまりExcelのVBA環境だとゴミクズ
726デフォルトの名無しさん (ワッチョイ 232f-lQWV)
2020/02/23(日) 20:58:50.89ID:9ZBd+yN40 そもそも言ってる内容が正しいとは思えないが、そこは議論の余地がなくはない
それよりオーバーヘッドって用語、使い方が間違ってると思うぞ
それよりオーバーヘッドって用語、使い方が間違ってると思うぞ
727デフォルトの名無しさん (アウアウエー Sadf-Nz9x)
2020/02/23(日) 21:57:21.45ID:2PAuLkEda タイプ量が長いのもあるけど
コードが長いと注意が分散されてミスに気付きにくくなるというのはあると思う
宗教戦争になるけど
コードが長いと注意が分散されてミスに気付きにくくなるというのはあると思う
宗教戦争になるけど
728デフォルトの名無しさん (ワッチョイ 8340-KfDg)
2020/02/24(月) 16:11:57.17ID:1tltuveE0 深さ不明の入れ子の連想配列があります。
値は数値一つか、一つ以上の連想配列のどちらかです。
下記の様にタブインデントの回数で位置を示した図をテキストファイルで作成したいのですが、どうすればいいでしょうか。
A
B
C 653
D 993
E
F
G 534
H 331
値は数値一つか、一つ以上の連想配列のどちらかです。
下記の様にタブインデントの回数で位置を示した図をテキストファイルで作成したいのですが、どうすればいいでしょうか。
A
B
C 653
D 993
E
F
G 534
H 331
729デフォルトの名無しさん (ワッチョイ 8340-KfDg)
2020/02/24(月) 16:13:00.23ID:1tltuveE0 スペースが潰れてしまったので修正します
A
B
C 653
D 993
E
F
G 534
H 331
A
B
C 653
D 993
E
F
G 534
H 331
730デフォルトの名無しさん (アウアウクー MM07-y94j)
2020/02/24(月) 16:28:54.55ID:pOROlutlM VBAを投げ捨ててyamlにする
731デフォルトの名無しさん (オッペケ Sr07-joR1)
2020/02/24(月) 16:29:30.10ID:BJsPLhtxr みなさんコード打ちはJIS配列でしていますか?
USのほうがやっぱり打ちやすいのかな
USのほうがやっぱり打ちやすいのかな
732デフォルトの名無しさん (アウアウウー Sae7-lfYl)
2020/02/24(月) 16:48:26.70ID:OWwFgx4ma VBA使ってる即ちプリインストール厨なんだから職場貸与のJISキーボードに決まってるでしょ
道具に拘ること自体は否定しないが、そんな奴がVBAなんてストレスMAXじゃないか?
捻れが大きすぎて正常な精神を保てなそう
道具に拘ること自体は否定しないが、そんな奴がVBAなんてストレスMAXじゃないか?
捻れが大きすぎて正常な精神を保てなそう
733デフォルトの名無しさん (ワッチョイ 8340-KfDg)
2020/02/24(月) 17:00:35.65ID:1tltuveE0 >>730
VBAでお願いします
VBAでお願いします
734デフォルトの名無しさん (ワッチョイ ff79-HgOh)
2020/02/24(月) 17:02:23.23ID:zhSNWlOe0 JSON VBAでぐぐれ
735デフォルトの名無しさん (ワッチョイ ff42-iCTl)
2020/02/24(月) 17:50:57.41ID:l6OFRdVP0 いやだ
736デフォルトの名無しさん (アークセー Sx07-XxLC)
2020/02/24(月) 19:43:10.92ID:jjjPoigmx >>728
連想配列とネスト深度を引数にとって出力を返す再帰関数を作る
連想配列の第一要素の型が数値ならば普通にネスト深度とKeyとValueから出力内容を生成して返し、連想配列だったら更に自身を呼び出すようにすれば良い
連想配列とネスト深度を引数にとって出力を返す再帰関数を作る
連想配列の第一要素の型が数値ならば普通にネスト深度とKeyとValueから出力内容を生成して返し、連想配列だったら更に自身を呼び出すようにすれば良い
737デフォルトの名無しさん (ワッチョイ 93da-uj/U)
2020/02/25(火) 09:26:37.66ID:d82kFCO70 >>728
普通にやっても問題ない
普通にやっても問題ない
738デフォルトの名無しさん (ドコグロ MM67-lfYl)
2020/02/25(火) 09:59:23.47ID:9IyrqwVFM VBAを気持ちよく使い続けたいなら、今与えられている環境が最高であると信じて疑わず、余計な知識を仕入れないことだ
特に、作業環境に拘りはじめるといずれ確実にVBAがボトルネックであるという考えに至ってしまうため非常に危険
特に、作業環境に拘りはじめるといずれ確実にVBAがボトルネックであるという考えに至ってしまうため非常に危険
739デフォルトの名無しさん (ワッチョイ 93da-Nz9x)
2020/02/25(火) 10:39:35.32ID:d82kFCO70 仕事なのか趣味なのかで取り組み方は全然違うぞ
740デフォルトの名無しさん (ワッチョイ 67da-DFeu)
2020/02/26(水) 19:10:12.76ID:vsXFrrYA0 VBAで何でも作れると、VSなんて要らないと思われてしまうため非常に危険
741デフォルトの名無しさん (ワッチョイ 0b94-ctjd)
2020/02/26(水) 20:09:04.34ID:JVb++aVC0 VBAで何でも作れるとは?
742デフォルトの名無しさん (スフッ Sdea-/0SP)
2020/02/26(水) 20:15:42.46ID:rKAt0si0d 何でもは作れないわ、作れる物だけ
743デフォルトの名無しさん (ブーイモ MM27-Y3k4)
2020/02/26(水) 20:28:14.58ID:Ll3mA7qnM excelVBAでDDEexecution使ってあるアプリを操作し、
そこでクリップボードに取得した画像をアクティブシートに貼り付けたいです
DDE経由で取得したクリップボードが空っぽなのですが、
DDEterminateする前にオブジェクトに移さないとダメなのでしょうか?
そこでクリップボードに取得した画像をアクティブシートに貼り付けたいです
DDE経由で取得したクリップボードが空っぽなのですが、
DDEterminateする前にオブジェクトに移さないとダメなのでしょうか?
744デフォルトの名無しさん (ワッチョイ 0b48-QQwt)
2020/02/26(水) 20:37:33.48ID:8sZglkar0 別言語いじると、元言語に戻ったとき、思わぬブレークスルーがあるので、別言語は是非やるべきだと思う。
745デフォルトの名無しさん (ワッチョイ 0ba2-ZhQ4)
2020/02/26(水) 21:08:39.92ID:+cz27N880 今やるならAWSだろ。
746デフォルトの名無しさん (ワッチョイ ca01-bE1b)
2020/02/26(水) 22:51:04.88ID:UkD+a9vW0 VBAでそこそこの物を作れるとは思うが他の言語使えるならわざわざVBAなんて選択しないよ
なので>>740が何を主張してるのかよくわからん
なので>>740が何を主張してるのかよくわからん
747デフォルトの名無しさん (ワッチョイ 0ba2-ZhQ4)
2020/02/26(水) 22:52:21.57ID:+cz27N880 じゃ、なんでこのスレいるの?
748デフォルトの名無しさん (ワッチョイ ca01-bE1b)
2020/02/26(水) 23:20:52.00ID:UkD+a9vW0 VBAでやらんといけない場合もあるから
ってことも想像できないの?
ってことも想像できないの?
749デフォルトの名無しさん (ワッチョイ 0ba2-ZhQ4)
2020/02/26(水) 23:32:57.96ID:+cz27N880 じゃ他言語が使えてもVBA使うことあるってことじゃん、何言ってんのこいつ
750デフォルトの名無しさん (ワッチョイ ca01-bE1b)
2020/02/27(木) 00:05:00.80ID:RMeeA8fN0 日本語の理解力なさすぎw
他の言語が使える(状況)ならって話な
他の言語が使える(状況)ならって話な
751デフォルトの名無しさん (ワッチョイ 0ba2-ZhQ4)
2020/02/27(木) 00:14:45.62ID:5xLWm1lA0 じゃ、状況って書けよ
VBAでそこそこの物を作れるとは思うが他の言語使えるならわざわざVBAなんて選択しない
↑
この表現から「状況」って単語を読み取ってほしいって自分の言葉足らずを認めず他人をなじるただの馬鹿としか思えんわな。
素直に謝れよw
VBAでそこそこの物を作れるとは思うが他の言語使えるならわざわざVBAなんて選択しない
↑
この表現から「状況」って単語を読み取ってほしいって自分の言葉足らずを認めず他人をなじるただの馬鹿としか思えんわな。
素直に謝れよw
752デフォルトの名無しさん (ワッチョイ 0ba2-ZhQ4)
2020/02/27(木) 00:17:32.13ID:5xLWm1lA0 「小学生並みの表現力が誤解を招いたにもかかわらず悪態をついた卑しき自分が存在してすみません」って言え
753デフォルトの名無しさん (ワッチョイ 07ce-DFeu)
2020/02/27(木) 04:21:27.06ID:NxJu2KcC0 たしかに「使える人」「使える状況」どっちにも読めるけど、俺は初見では「使える人」の方だと思った
判断の理由は、まずこの文章には主語がないこと
そこで想像で「俺は」を補い読み進めると、次に同じ文章の中に「作れる」「選択しない」という単語が、また主格を伴わずに出てくる
この場合は、すべての動詞の主体は「人」だと判断するのが自然
判断の理由は、まずこの文章には主語がないこと
そこで想像で「俺は」を補い読み進めると、次に同じ文章の中に「作れる」「選択しない」という単語が、また主格を伴わずに出てくる
この場合は、すべての動詞の主体は「人」だと判断するのが自然
754デフォルトの名無しさん (ワッチョイ 0b94-ctjd)
2020/02/27(木) 04:35:15.51ID:PX1R20t40 ネチネチとクドい言い方がキモいよ
755デフォルトの名無しさん (ワッチョイ ca01-bE1b)
2020/02/27(木) 04:55:30.05ID:RMeeA8fN0 理解力足りない奴がクドクド夜中まで大変だなw
756デフォルトの名無しさん (スプッッ Sd02-ciQC)
2020/02/27(木) 05:05:43.27ID:F9flkDmPd 4時21分は夜中だけど4時55分は朝
757デフォルトの名無しさん (ワッチョイ 3a26-7qQN)
2020/02/27(木) 05:27:02.00ID:1NTaOPIN0 文章力低すぎて試験で失敗したタイプ
758デフォルトの名無しさん (ドコグロ MM02-bE1b)
2020/02/27(木) 06:51:41.59ID:6N44UBOdM 文章力で試験に失敗とかそんな経験ないけどなw
そもそも今時ム板見てる人でVBAだけ使える人って珍しくね?
そもそも今時ム板見てる人でVBAだけ使える人って珍しくね?
759デフォルトの名無しさん (ワッチョイ 0668-Qfp7)
2020/02/27(木) 09:46:48.05ID:RXnANkEf0 論点ズレズレで遊ぶ大人(外見だけ)?
760デフォルトの名無しさん (ドコグロ MM02-bE1b)
2020/02/27(木) 12:41:36.10ID:6N44UBOdM 試験とか言い出して論点ずらそうと必死な奴を虐めるなよw
761デフォルトの名無しさん (ワッチョイ def2-oL1e)
2020/02/27(木) 14:04:05.59ID:XYBaslRL0 CGだとわかっていてもwww
762デフォルトの名無しさん (アウアウウー Sa2f-n4Mc)
2020/02/27(木) 14:16:04.01ID:xizTLawga >>756
わかる(わかる)
わかる(わかる)
763デフォルトの名無しさん (ワッチョイ 4ab0-mnKr)
2020/02/27(木) 15:36:14.26ID:C8kQhi5I0 言葉の内容じゃなくて表現に文句つける奴は大体無能
完璧な意思疎通なんて無理なんだから曖昧な点は都度確認して
ああそういう意図だったので済むのにネチネチとなんの生産性もない
完璧な意思疎通なんて無理なんだから曖昧な点は都度確認して
ああそういう意図だったので済むのにネチネチとなんの生産性もない
764デフォルトの名無しさん (アウアウウー Sa2f-VlRL)
2020/02/27(木) 18:40:02.39ID:cb25kGwba せやかてクド
765デフォルトの名無しさん (ワッチョイ 4a42-us/x)
2020/02/27(木) 22:04:00.42ID:d4EgxlqA0 わふー
767デフォルトの名無しさん (ワッチョイ b301-hmiQ)
2020/02/27(木) 23:43:30.37ID:qWPXm1F00768デフォルトの名無しさん (ワッチョイ 678a-mhrx)
2020/02/28(金) 06:19:02.24ID:unYBun0f0 それはズルいだろって言われそうな方法なら…。
769デフォルトの名無しさん (ワッチョイ 0ba2-ZhQ4)
2020/02/28(金) 06:20:10.17ID:L+KjVouD0 C#とかで処理してVBAに渡すとか?
770767 (ワッチョイ b301-hmiQ)
2020/02/28(金) 07:09:52.34ID:yw4NYUGs0 別のEXCEL(多数)起動して並列処理もどきをやったことはあるんですが、無理やりな感じは否めないかな…
ソース(ファイル)も分散するし
(プロジェクトとしてフォルダに纏めるくらいしか…)
VBAの知識だけでできるのはいいんだけど
ソース(ファイル)も分散するし
(プロジェクトとしてフォルダに纏めるくらいしか…)
VBAの知識だけでできるのはいいんだけど
771デフォルトの名無しさん (JP 0H27-iWdh)
2020/02/28(金) 10:20:28.33ID:zXCoNy+pH sendkeysを使って
他のアプリを操作し
ctrl +pgdnをしたいのですが実行されません
SendKeys"^{PGDN}",True
他のアプリを操作し
ctrl +pgdnをしたいのですが実行されません
SendKeys"^{PGDN}",True
772デフォルトの名無しさん (ワッチョイ decc-DFeu)
2020/02/28(金) 12:25:39.80ID:2j7Cc3iW0 >>771
まず第一に、SendKeysの確実性はそんなに高くないので、正しく記述しても必ずしも毎回動くとは限らないということを理解しておく必要があるよ
その上で
アクティブなウインドウに送るので事前に他のアプリをアクティブにしておく
他のウインドウをアクティブにするのにウインドウタイトルを指定する必要があるのでその記述にも気を配る
他のウインドウがアクティブになるのにタイムラグがあるのでSleepとかを使って調整する必要があるけどVBAには無いのでほかから借りてくるかApplication.Waitで代用する
どうしても動かない場合は、もっと簡単なケースで試す
まず第一に、SendKeysの確実性はそんなに高くないので、正しく記述しても必ずしも毎回動くとは限らないということを理解しておく必要があるよ
その上で
アクティブなウインドウに送るので事前に他のアプリをアクティブにしておく
他のウインドウをアクティブにするのにウインドウタイトルを指定する必要があるのでその記述にも気を配る
他のウインドウがアクティブになるのにタイムラグがあるのでSleepとかを使って調整する必要があるけどVBAには無いのでほかから借りてくるかApplication.Waitで代用する
どうしても動かない場合は、もっと簡単なケースで試す
773デフォルトの名無しさん (ワッチョイ 4a90-DFeu)
2020/02/28(金) 17:21:36.80ID:eDNEl8wD0 Excel21016
現在フォルダを指定してその配下にあるファイルの一覧をシートに記載するのを作成中なんですが。
FileLen関数でファイルサイズを出してるんだけど戻り値がLiong型でそれを越えるファイルだとマイナスの値が
返ってきてしまう。そこでFileLen関数以外で正しくサイズを返せるものあるいは工夫ってあります?
現在フォルダを指定してその配下にあるファイルの一覧をシートに記載するのを作成中なんですが。
FileLen関数でファイルサイズを出してるんだけど戻り値がLiong型でそれを越えるファイルだとマイナスの値が
返ってきてしまう。そこでFileLen関数以外で正しくサイズを返せるものあるいは工夫ってあります?
774デフォルトの名無しさん (ワッチョイ 06f7-R/mx)
2020/02/28(金) 18:23:01.43ID:MtqAk8k50 Scripting.FileSystemObjectのFile.Sizeを使うとか
775デフォルトの名無しさん (アウアウウー Sa2f-VlRL)
2020/02/28(金) 18:24:45.49ID:tYO2NqnQa 入力ミスかw
776デフォルトの名無しさん (オイコラミネオ MMeb-hmiQ)
2020/02/28(金) 18:31:00.61ID:J9MIpREGM FileSystemObjectを使う機会は増えたな
778デフォルトの名無しさん (アウアウウー Sa2f-VlRL)
2020/02/28(金) 19:38:05.63ID:XpFHUdRGa vbaのlong って最大いくつ?
779デフォルトの名無しさん (ワッチョイ b301-bz6n)
2020/02/28(金) 19:53:42.22ID:04Y2DCb30 符号付4byteだから(256^4)/2-1
780デフォルトの名無しさん (ワッチョイ 07ce-DFeu)
2020/02/28(金) 20:02:10.27ID:aE85awzW0 >>778
2G
2G
781デフォルトの名無しさん (アウアウウー Sa2f-VlRL)
2020/02/28(金) 22:10:29.04ID:KGz3N4NDa 2G越えるファイルexcelで読むの?
782デフォルトの名無しさん (アウアウウー Sa2f-VlRL)
2020/02/28(金) 22:12:17.34ID:KGz3N4NDa あ、一覧か
とりあえず負の数なら強引に変換するとか
とりあえず負の数なら強引に変換するとか
783デフォルトの名無しさん (ワッチョイ 07ce-DFeu)
2020/02/28(金) 22:50:10.05ID:aE85awzW0 それでも4Gまでしか扱えないから困るんじゃない?やっぱり根本的に解決するにはFSOが必要だよ
784デフォルトの名無しさん (ワッチョイ 67da-DFeu)
2020/02/29(土) 01:59:32.20ID:nzXCWKfq0 LongLongってVBAで使える?
785デフォルトの名無しさん (ワッチョイ 07ce-DFeu)
2020/02/29(土) 06:46:07.87ID:PnWd0bax0 >>784
Officeが64bit版なら使える
Officeが64bit版なら使える
786デフォルトの名無しさん (ワッチョイ 67da-DFeu)
2020/02/29(土) 08:45:02.05ID:yVx3ckV70 >>773
無理にVBA使わなくてもBATでいいんじゃ・・。
無理にVBA使わなくてもBATでいいんじゃ・・。
787デフォルトの名無しさん (スップ Sd8a-nxU/)
2020/02/29(土) 10:00:21.23ID:8kABrwU4d788デフォルトの名無しさん (スフッ Sdea-V6ja)
2020/02/29(土) 17:24:40.65ID:pn9TVa1rd でもWindowsの設定とかストアアプリ系に入力したい時そういう考えだと詰む
789デフォルトの名無しさん (スップ Sd8a-nxU/)
2020/02/29(土) 19:33:22.04ID:8kABrwU4d790デフォルトの名無しさん (ワッチョイ b301-hmiQ)
2020/02/29(土) 19:49:03.27ID:aTMkJ8LJ0 >>789
Windowsの設定はいいとして、ストアアプリ系で他に使えるいくらでもある方法教えて下さい
Windowsの設定はいいとして、ストアアプリ系で他に使えるいくらでもある方法教えて下さい
791デフォルトの名無しさん (ワッチョイ 67da-DFeu)
2020/02/29(土) 19:55:39.58ID:yVx3ckV70 >いくらでもある
何か前にも聞いたことあるな。
いくらでもある → 具体的にはどうするの → 絶対答えられない のパターン。
前とは別の人だといいね。
何か前にも聞いたことあるな。
いくらでもある → 具体的にはどうするの → 絶対答えられない のパターン。
前とは別の人だといいね。
792デフォルトの名無しさん (スプッッ Sd8a-ctjd)
2020/03/01(日) 01:31:17.39ID:08o/9f1Pd WindowsPhoneとかストアアプリとかアッというまに消えたよね
793デフォルトの名無しさん (ワッチョイ 67da-VlRL)
2020/03/01(日) 14:55:22.38ID:HFjntDoM0 消えたのか、どうでもいいけど
794デフォルトの名無しさん (ワッチョイ ca79-9S9A)
2020/03/01(日) 20:39:03.78ID:pGVc13rd0 作る側の負担が大きい上にメリットがない
795デフォルトの名無しさん (ワッチョイ f391-nxU/)
2020/03/01(日) 20:39:37.46ID:0p2p+SL30796デフォルトの名無しさん (ワッチョイ b301-hmiQ)
2020/03/01(日) 21:13:10.43ID:e3qx9Rp60 >>795
アクセシビリティって何すか?
アクセシビリティって何すか?
797デフォルトの名無しさん (ワッチョイ 67da-DFeu)
2020/03/01(日) 21:20:05.52ID:l9YkKU150 その人じゃないが、UIAutomationのinvokePattern.Invokeでフリーズして詰んだことはある。
798デフォルトの名無しさん (ワッチョイ 67da-DFeu)
2020/03/01(日) 21:23:39.21ID:l9YkKU150 >>796
多分IAccessible。
多分IAccessible。
799デフォルトの名無しさん (ワッチョイ f391-nxU/)
2020/03/02(月) 00:30:19.58ID:lG3i9xSc0800デフォルトの名無しさん (オイコラミネオ MMeb-hmiQ)
2020/03/03(火) 15:10:58.72ID:7/oOWVG0M プログラミング言語人気ランキング2020
https://active.nikkeibp.co.jp/atcl/act/19/00124/
使用している言語のトップ10内にVBAが。まあ、実際そんなもんでしょう
C/C++がトップなのは日経がゆえなのか…
PL/Iが出てるのが懐い(ToT)
htmlが違和感。まあ言語だけど…
https://active.nikkeibp.co.jp/atcl/act/19/00124/
使用している言語のトップ10内にVBAが。まあ、実際そんなもんでしょう
C/C++がトップなのは日経がゆえなのか…
PL/Iが出てるのが懐い(ToT)
htmlが違和感。まあ言語だけど…
801デフォルトの名無しさん (オッペケ Sr03-erxk)
2020/03/03(火) 17:19:11.87ID:JZf49imxr >>800
全部ウィンドウズでできますか?
全部ウィンドウズでできますか?
802デフォルトの名無しさん (ワッチョイ 07ce-DFeu)
2020/03/03(火) 18:02:04.76ID:ZNfWdjcz0803デフォルトの名無しさん (アウアウエー Sac2-FxcX)
2020/03/03(火) 18:59:05.76ID:tIhoJqwEa rubyってこんなもんか
804デフォルトの名無しさん (ワッチョイ 9f7c-oL1e)
2020/03/03(火) 19:26:06.93ID:b2+NWnE80 COBOLは使いたくなくても使わざるを得ないんだよ
805デフォルトの名無しさん (ドコグロ MM02-bE1b)
2020/03/03(火) 20:03:07.46ID:AJx5UoX4M まあ業務で使ってる言語ならそれほど違和感無いな
なんだかんだ言ってC/C++はつえーわ
あといい加減HTML/CSSを入れるのをやめろと思うわ
言語と言ってもプログラム言語じゃねーし
なんだかんだ言ってC/C++はつえーわ
あといい加減HTML/CSSを入れるのをやめろと思うわ
言語と言ってもプログラム言語じゃねーし
806デフォルトの名無しさん (ワッチョイ 63e6-VkxK)
2020/03/03(火) 22:21:40.76ID:dFpQRGVD0 Java と VBA が同じって有り得ないと思うが
807デフォルトの名無しさん (ワッチョイ 07ce-DFeu)
2020/03/03(火) 22:32:12.13ID:ZNfWdjcz0 だから職場で強要されてる言語のランキングでしょ
能率とか好みとか無関係
能率とか好みとか無関係
808デフォルトの名無しさん (ワッチョイ ff8e-oceE)
2020/03/03(火) 22:33:01.86ID:dGcpOur50 これと似たような理由だろ
https://i.imgur.com/q4GXr11.jpg
https://i.imgur.com/q4GXr11.jpg
809デフォルトの名無しさん (アークセー Sx03-54rA)
2020/03/03(火) 22:33:31.58ID:1bYPNvMdx COBOLは数十年に及ぶ後方互換性維持の実績があるから絶対にこのくらいの順位で落ち着く
COBOL不要論とか妄言だからなマジで
COBOL不要論とか妄言だからなマジで
810デフォルトの名無しさん (ワッチョイ 9f7c-oL1e)
2020/03/03(火) 22:49:49.99ID:b2+NWnE80 VBAの依頼はとても多い
811デフォルトの名無しさん (ワッチョイ cbae-1hVY)
2020/03/04(水) 00:14:55.68ID:SHIP3lO60 アドインをショートカットで呼びだす方法が調べてもわからないのですがあるのでしょうか
812デフォルトの名無しさん (アウアウウー Sa0f-blPw)
2020/03/04(水) 00:21:59.37ID:9VsHR+eQa 業界が慢性的な人不足だから、ある程度メジャーな言語ならそりゃ絶対的にはどれでも依頼はとても多いさ
どれを選んでも仕事は十分にあるのだから、どれとは言わないがあえて単価も人材市場評価も低いものを選ぶ必要はない
どれを選んでも仕事は十分にあるのだから、どれとは言わないがあえて単価も人材市場評価も低いものを選ぶ必要はない
813デフォルトの名無しさん (ワッチョイ 9f01-wuuJ)
2020/03/04(水) 06:19:22.68ID:Yqjto87s0814デフォルトの名無しさん (アウアウエー Sa3f-QWq5)
2020/03/04(水) 12:28:43.38ID:5h+Z4JsAa VBAの将来性ってどうなんですかね?
これがいい、っていう代わりがあればすぐにも移行するけど、それが示されないのにただ VBAは将来が… って言われてもなぁ…
これがいい、っていう代わりがあればすぐにも移行するけど、それが示されないのにただ VBAは将来が… って言われてもなぁ…
815デフォルトの名無しさん (アウアウエー Sa3f-2dlT)
2020/03/04(水) 12:48:25.12ID:pN64i/qda なんか何年も前からそう言われ続けている気がする
816デフォルトの名無しさん (ワッチョイ 3bb0-yu5C)
2020/03/04(水) 12:52:02.85ID:wYjs4WK40 現状維持か消えるかだろう
どう考えても発展する余地はない
どう考えても発展する余地はない
817デフォルトの名無しさん (ワッチョイ 3bb0-yu5C)
2020/03/04(水) 12:53:02.66ID:wYjs4WK40 どちらにせよ今のCOBOL需要みたいなのは残るだろうね
818デフォルトの名無しさん (ワッチョイ 1bce-xiWk)
2020/03/04(水) 12:53:45.23ID:192gnjdP0 ずっと10年以上VBAは終わりと言い続けてるやつがいるけど、ランキングを見ればわかるように現場では普通に使われてる
WindowsというOSも終わりと以下略
一度広まってしまった物は簡単には消えないんだよ
生態系を壊してるブラックバスと同じ
WindowsというOSも終わりと以下略
一度広まってしまった物は簡単には消えないんだよ
生態系を壊してるブラックバスと同じ
819デフォルトの名無しさん (ワッチョイ ef33-MCu0)
2020/03/04(水) 13:23:13.58ID:GaU/rHnt0 じゃあコロナも消えないな
820デフォルトの名無しさん (ワッチョイ 9f42-ZjDW)
2020/03/04(水) 13:55:31.39ID:HLZcEGPZ0 自然淘汰を待っているのと積極的に対策してるのを同列に語るのはどうかと
821デフォルトの名無しさん (ワッチョイ cbda-xiWk)
2020/03/04(水) 14:16:54.47ID:ryjR/JBt0 VBAが終わったらMSオフィスを使う理由がなくなる
822デフォルトの名無しさん (ワッチョイ 9bda-xiWk)
2020/03/04(水) 16:39:27.01ID:MKyvAYdn0 何をもって終わったというのか、後続が出なくても現場で使っていたら終わってないし
823デフォルトの名無しさん (ドコグロ MM4f-blPw)
2020/03/04(水) 18:32:59.89ID:O/qwuvY6M まあ既存のVBAマクロが新しいバージョンのExcelで動かなくなる日が来るとは思えないが、
VBEが廃止されて新規に作れなくなるのは十分にありうる
終わりがくるとしたらそれだろう
実際、VisualStudioなどのMS製品の多くは昔はVBAが入ってたわけだしな
VBEが廃止されて新規に作れなくなるのは十分にありうる
終わりがくるとしたらそれだろう
実際、VisualStudioなどのMS製品の多くは昔はVBAが入ってたわけだしな
824デフォルトの名無しさん (ワッチョイ 1bce-xiWk)
2020/03/04(水) 19:49:17.22ID:192gnjdP0825デフォルトの名無しさん (ワッチョイ cbae-ivEr)
2020/03/04(水) 20:05:22.88ID:SHIP3lO60 >>811
これ誰か知りませんか
これ誰か知りませんか
826デフォルトの名無しさん (ワッチョイ 3b7c-Ff7g)
2020/03/04(水) 20:13:23.22ID:4N1Kq+pZ0 >>825
クイックアクセスツールバーに入れてAltで呼び出すのが手軽なんじゃね
クイックアクセスツールバーに入れてAltで呼び出すのが手軽なんじゃね
827デフォルトの名無しさん (ワッチョイ 4b2f-4muP)
2020/03/04(水) 20:17:28.31ID:3PnKhINo0 ショートカットってなにさ
828デフォルトの名無しさん (ワッチョイ ab01-UjD1)
2020/03/04(水) 20:26:14.55ID:X6jjanDB0 ctrl + A みたいなんやろ
829デフォルトの名無しさん (ワッチョイ 9bda-xiWk)
2020/03/04(水) 20:41:44.37ID:hxmeGFhc0 調べてもわからないってなんやねん・・。
俺もわからないからググったら、検索結果の1番上に出てきたじゃんか。
俺もわからないからググったら、検索結果の1番上に出てきたじゃんか。
830デフォルトの名無しさん (スプッッ Sdbf-kTmN)
2020/03/05(木) 14:00:12.70ID:rKi2A6DKd 昔は何でもかんでもエクセルだったけど今は専用アプリが増えてエクセルの出番が減ってる
今後はもっとエクセルを使う場面が減るだろう
エクセルが無くなる事はないにしても
今後はもっとエクセルを使う場面が減るだろう
エクセルが無くなる事はないにしても
831デフォルトの名無しさん (オッペケ Sr4f-Qcyj)
2020/03/05(木) 15:07:31.53ID:Ug+scqfur 専用アプリ?
832デフォルトの名無しさん (ワッチョイ 0feb-Lqe9)
2020/03/05(木) 20:34:42.71ID:K6v7QzcZ0 質問です。よろしくお願いします。
ブックにある複数のシートをそれぞれ順に、いちばん左上が表示されている状態にしておく、という動作を作りたいです。
Do
Name = (対象シートの名前)
ThisWorkbook.Worksheets(Name).Select
ThisWorkbook.Worksheets(Name).Range("A1").Select
ActiveWindow.ScrollColumn = 1
ActiveWindow.ScrollRow = 1
(対象を次のシートに切り替え)
Loop
↑
このように書きました。
しかし、この書き方では、このプログラムを動作中にたまたま他のブックが選択されてしまったりして、
当ブックがアクティブでなくなった場合、ActiveWindow.という部分でエラーがでるんじゃないかという気になりました。
とはいえ、ThisWorkbook.Worksheets(Name).ScrollColumn = 1 というように書いてもダメみたいです。
また、A1をselectするだけでは、表示が左上になりません。
何かいい方法ないでしょうか?
ブックにある複数のシートをそれぞれ順に、いちばん左上が表示されている状態にしておく、という動作を作りたいです。
Do
Name = (対象シートの名前)
ThisWorkbook.Worksheets(Name).Select
ThisWorkbook.Worksheets(Name).Range("A1").Select
ActiveWindow.ScrollColumn = 1
ActiveWindow.ScrollRow = 1
(対象を次のシートに切り替え)
Loop
↑
このように書きました。
しかし、この書き方では、このプログラムを動作中にたまたま他のブックが選択されてしまったりして、
当ブックがアクティブでなくなった場合、ActiveWindow.という部分でエラーがでるんじゃないかという気になりました。
とはいえ、ThisWorkbook.Worksheets(Name).ScrollColumn = 1 というように書いてもダメみたいです。
また、A1をselectするだけでは、表示が左上になりません。
何かいい方法ないでしょうか?
833デフォルトの名無しさん (ワッチョイ 3b7c-Ff7g)
2020/03/05(木) 21:15:18.39ID:/LYBmypS0 >>832
application.goto
application.goto
834デフォルトの名無しさん (ワッチョイ 1bce-xiWk)
2020/03/05(木) 21:41:08.70ID:yWFKM6iN0 >>832
Application.Goto Sheets("Sheet1").Cells(1, 1), True
Application.Goto Sheets("Sheet1").Cells(1, 1), True
835デフォルトの名無しさん (ワッチョイ eff7-e9xa)
2020/03/05(木) 23:02:22.56ID:WJr0+YDk0 >>832
Application.ignoreRemoteRequest = false
Application.ignoreRemoteRequest = false
836832 (ワッチョイ 0feb-Lqe9)
2020/03/06(金) 01:00:24.26ID:kNbJ3ddM0837デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/06(金) 01:31:44.92ID:Z17kfdKR0838デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/06(金) 01:33:53.22ID:Z17kfdKR0839デフォルトの名無しさん (ワッチョイ 9b8a-FZuH)
2020/03/06(金) 06:07:03.55ID:3qnD0oaT0 逆に1,1をselectして左上が表示される俺のエクセルは一体どうなってるんだ。。。
840デフォルトの名無しさん (ワッチョイ ab01-5zdl)
2020/03/06(金) 06:46:48.61ID:fNVi1eTS0 VBAはマクロ言語としては普通に使いやすいと思うけどな
汎用的な言語としてはクソだとは思うけど
汎用的な言語としてはクソだとは思うけど
>>840
VBA のどのような点が汎用言語として残念なのでしょうか?
VBA のどのような点が汎用言語として残念なのでしょうか?
842デフォルトの名無しさん (JP 0H3f-jph9)
2020/03/06(金) 18:42:09.16ID:TqGCTxoCH843デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/06(金) 18:44:01.50ID:Z17kfdKR0844デフォルトの名無しさん (ワッチョイ 3b7c-Ff7g)
2020/03/06(金) 19:21:04.42ID:9o5wzflr0 >>836
実際やってみたらどうだった?
実際やってみたらどうだった?
845デフォルトの名無しさん (ドコグロ MM4f-F74f)
2020/03/06(金) 21:02:36.48ID:hYOq9QPMM >>842
俺もそれには同意したいがnodejsとかの状況見たらそんなことは言ってられないような気がする
俺もそれには同意したいがnodejsとかの状況見たらそんなことは言ってられないような気がする
846デフォルトの名無しさん (ワッチョイ 9bda-xiWk)
2020/03/06(金) 21:13:00.50ID:VJTVQ6P20 ↓宣言
Dim warota As String
Dim kusa As String
↓ずれてるのがしっくりこないのでこうしてみる。
Dim warota As String
Dim kusa As String
文字間が空いているのも嫌なので、
↓もうこれでいいやwwwwってなる。
Dim warota As String, kusa As String
Dim warota As String
Dim kusa As String
↓ずれてるのがしっくりこないのでこうしてみる。
Dim warota As String
Dim kusa As String
文字間が空いているのも嫌なので、
↓もうこれでいいやwwwwってなる。
Dim warota As String, kusa As String
847デフォルトの名無しさん (ワッチョイ 9bda-xiWk)
2020/03/06(金) 21:13:29.84ID:VJTVQ6P20 どうすればいいっすかね。
848デフォルトの名無しさん (ワッチョイ 9f01-cLLN)
2020/03/06(金) 21:41:31.84ID:qqIAHFEh0 >>838
何頓珍漢なこと言ってんだよ。PythonはVBAより古いぞ。
1991年 Python
1993年 VBA
1996年 JScript
Pythonなんてゴミみたいな文法で、VBAとは比べ物にならない。
VBAも古くなったのは確かなので、VBA.NETに進化させるべきだな。
何頓珍漢なこと言ってんだよ。PythonはVBAより古いぞ。
1991年 Python
1993年 VBA
1996年 JScript
Pythonなんてゴミみたいな文法で、VBAとは比べ物にならない。
VBAも古くなったのは確かなので、VBA.NETに進化させるべきだな。
849デフォルトの名無しさん (ワッチョイ 1bce-xiWk)
2020/03/06(金) 22:08:33.10ID:zRyfvowG0 VBAはVBの長い歴史を引き継いでるんだから、VBAの登場時期だけでくらべても意味がない
850デフォルトの名無しさん (ワッチョイ ab01-Licc)
2020/03/06(金) 22:19:00.08ID:8BomHpEo0 >>846
Dim warota$, kusa$
Dim warota$, kusa$
851デフォルトの名無しさん (ワッチョイ 9f01-cLLN)
2020/03/06(金) 22:44:21.46ID:qqIAHFEh0 >>848
VBは1991年登場だからPythonと同じ。構造化され、1964年のBASICとは別物。
VBAにはwith文(Python風のではなくPascal風の)があるので、同じオブジェクトに
対する連続した操作をすっきり記述できて、Excelに適している。
VBは1991年登場だからPythonと同じ。構造化され、1964年のBASICとは別物。
VBAにはwith文(Python風のではなくPascal風の)があるので、同じオブジェクトに
対する連続した操作をすっきり記述できて、Excelに適している。
852デフォルトの名無しさん (ワッチョイ 9f01-F74f)
2020/03/06(金) 22:47:00.07ID:Oq5LDxMU0853デフォルトの名無しさん (ワッチョイ 9bda-xiWk)
2020/03/06(金) 23:18:50.14ID:VJTVQ6P20854デフォルトの名無しさん (スププ Sdbf-rBsR)
2020/03/06(金) 23:36:11.80ID:x5aTnGY4d >>853
これが原点回帰
これが原点回帰
855デフォルトの名無しさん (アウアウエー Sa3f-QWq5)
2020/03/06(金) 23:37:21.11ID:/27OnYlma 発展の余地がないとか…
枯れてるからよいということもあるのにね
枯れてるからよいということもあるのにね
856デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/07(土) 03:51:28.07ID:meF2wfp30 登場年の問題じゃなくて
言語の記述性の問題
言語の記述性の問題
857デフォルトの名無しさん (ワッチョイ 9bda-xiWk)
2020/03/07(土) 05:49:46.99ID:wS7FLE9a0 記述性より可読性じゃね
858デフォルトの名無しさん (ワッチョイ ab91-dO/C)
2020/03/07(土) 08:18:03.28ID:ZT4uJUE70 なんか、頓珍漢な議論になってるな。
Excelに搭載されてるなら何でも良いだろ。
搭載されてるかどうかが全てだぞ。
汎用的な言語とか意味が無い。
汎用的に使わないから意味が有るのに。
Excelに搭載されてるなら何でも良いだろ。
搭載されてるかどうかが全てだぞ。
汎用的な言語とか意味が無い。
汎用的に使わないから意味が有るのに。
859デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/07(土) 08:32:32.42ID:meF2wfp30 記述性も可読性も両方
Pythonの方が高いだろ
Pythonの方が高いだろ
860デフォルトの名無しさん (ワッチョイ 9f79-sNVK)
2020/03/07(土) 13:39:18.70ID:oT61NKq30 Excelに搭載されてる必要を感じない
861デフォルトの名無しさん (ワッチョイ ab01-Licc)
2020/03/07(土) 13:43:50.68ID:XL39BLbv0862デフォルトの名無しさん (ワッチョイ ab01-Licc)
2020/03/07(土) 13:47:04.80ID:XL39BLbv0863デフォルトの名無しさん (ワッチョイ 8b04-qBvo)
2020/03/07(土) 16:15:01.98ID:qDBeB9FV0 フィルターで絞り込まれた表の一部分を選択した後、
下記のイベントを発生させるとメッセージボックスが2回ループします。
なぜなんでしょうか?
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim セル As Variant
For Each セル In Target.SpecialCells(xlCellTypeVisible)
MsgBox セル
Next
End Sub
下記のイベントを発生させるとメッセージボックスが2回ループします。
なぜなんでしょうか?
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim セル As Variant
For Each セル In Target.SpecialCells(xlCellTypeVisible)
MsgBox セル
Next
End Sub
864デフォルトの名無しさん (ワッチョイ 3b7c-Ff7g)
2020/03/07(土) 16:24:52.38ID:ccKtHpW90 >>863
セル2個選択してるんでないの
セル2個選択してるんでないの
865デフォルトの名無しさん (ワッチョイ 8b04-vh9z)
2020/03/07(土) 16:29:20.73ID:qDBeB9FV0866デフォルトの名無しさん (ワッチョイ ab01-Licc)
2020/03/07(土) 16:30:32.47ID:XL39BLbv0 >>863
targetと セル 変数の中身は何なんだろ?
targetと セル 変数の中身は何なんだろ?
867デフォルトの名無しさん (ワッチョイ 3b7c-Ff7g)
2020/03/07(土) 17:40:21.34ID:ccKtHpW90868デフォルトの名無しさん (ワッチョイ 3b7c-Ff7g)
2020/03/07(土) 17:40:43.03ID:ccKtHpW90 forの前に
869デフォルトの名無しさん (バットンキン MMcf-vh9z)
2020/03/07(土) 18:39:19.55ID:XtitbUGhM870デフォルトの名無しさん (バットンキン MMcf-vh9z)
2020/03/07(土) 18:48:07.81ID:XtitbUGhM871デフォルトの名無しさん (ワッチョイ 9bda-xiWk)
2020/03/07(土) 19:39:05.36ID:IvWBzVie0 Excelでメモリの使用量を知る方法ってない?
タスクマネージャーのやつじゃなくて、Excel上で。
配列にどのくらいまでなら入れられるかの目安にしたいんだけど。
タスクマネージャーのやつじゃなくて、Excel上で。
配列にどのくらいまでなら入れられるかの目安にしたいんだけど。
872デフォルトの名無しさん (ワッチョイ ab01-Licc)
2020/03/07(土) 21:31:42.74ID:XL39BLbv0 >>869
subの直後に
debug.print "Worksheet_SelectionChange start"
debug.print target.address(でいけるかな…)
forの中に
debug.print "セル" & セル.address
こうすると、どういう順で動いてるか、値も把握できて解析に役立つ
何なんだろと聞いたのはそういう事
動きがわからないときはどんどんdebug.print を埋め込んで可視化するのが解決の近道ですよ
subの直後に
debug.print "Worksheet_SelectionChange start"
debug.print target.address(でいけるかな…)
forの中に
debug.print "セル" & セル.address
こうすると、どういう順で動いてるか、値も把握できて解析に役立つ
何なんだろと聞いたのはそういう事
動きがわからないときはどんどんdebug.print を埋め込んで可視化するのが解決の近道ですよ
873デフォルトの名無しさん (ワッチョイ 8b04-vh9z)
2020/03/07(土) 21:52:17.59ID:qDBeB9FV0874デフォルトの名無しさん (アウアウエー Sa3f-Inmc)
2020/03/07(土) 22:02:15.16ID:2DcP5AA9a ちなみに、printの部分は?でもいけるよな
875デフォルトの名無しさん (ワッチョイ 1bce-xiWk)
2020/03/07(土) 23:28:27.67ID:IUbg0+ba0 >>871
昔のApplication.MemoryFreeに相当する空きメモリ情報はWin32APIのGetProcessMemoryInfoを使わないと取得できない
昔のApplication.MemoryFreeに相当する空きメモリ情報はWin32APIのGetProcessMemoryInfoを使わないと取得できない
876デフォルトの名無しさん (ワッチョイ ab01-Licc)
2020/03/08(日) 00:44:09.13ID:mw19GHmw0877デフォルトの名無しさん (ワッチョイ bb8e-jhwo)
2020/03/08(日) 00:57:04.90ID:eh2q8TLt0 >>876
馬鹿は死ねよ
馬鹿は死ねよ
878デフォルトの名無しさん (オッペケ Sr4f-f/nk)
2020/03/08(日) 01:15:51.35ID:zr0fZFNpr879デフォルトの名無しさん (ワッチョイ ab01-5zdl)
2020/03/08(日) 01:53:06.36ID:I6P98FeB0 >>841
・名前空間がない
・クラスが継承出来ない
・局所関数が作れない
みたいなコード管理や再利用に関する機能が貧弱
そのせいで関数同士の関係が分かりづらくて
作った人しか分からないソースになりがちだと思う
一応プロジェクトを名前空間として扱えば頑張れるが作業に対するコスパが悪い
・名前空間がない
・クラスが継承出来ない
・局所関数が作れない
みたいなコード管理や再利用に関する機能が貧弱
そのせいで関数同士の関係が分かりづらくて
作った人しか分からないソースになりがちだと思う
一応プロジェクトを名前空間として扱えば頑張れるが作業に対するコスパが悪い
880デフォルトの名無しさん (アウアウウー Sa0f-Lqe9)
2020/03/08(日) 09:30:09.90ID:d1lp2qnEa 他人に簡単に理解されて得なことなんて一つもない
理解されない方が得
理解されて何の得があるんだよ
理解されない方が得
理解されて何の得があるんだよ
881デフォルトの名無しさん (ワッチョイ eff7-e9xa)
2020/03/08(日) 10:04:42.45ID:KmiE4RE50 チームメンバーは他人じゃないよな
いわば運命共同体
同僚は兄弟、同僚は家族
いわば運命共同体
同僚は兄弟、同僚は家族
882デフォルトの名無しさん (アウアウウー Sa0f-lYXe)
2020/03/08(日) 10:23:41.84ID:lidP191Ca >>881
お前のものは俺のもの
お前のものは俺のもの
883デフォルトの名無しさん (アウアウウー Sa0f-Lqe9)
2020/03/08(日) 11:06:34.19ID:/EkcPSuMa >>881
それ思ってるのお前だけだから
それ思ってるのお前だけだから
884デフォルトの名無しさん (アウアウエー Sa3f-Inmc)
2020/03/08(日) 11:16:24.07ID:aqmzj8A6a >>879
それ、よく言われてるけど、結局オブジェクトのスパゲティーができるだけだよな、、、
ちょっとしたシステムでもクラスが数千個もできて管理できないやつ
継承とか再利用って何か修正があった時の影響調査に時間ががかるだけで全然楽にならない
それ、よく言われてるけど、結局オブジェクトのスパゲティーができるだけだよな、、、
ちょっとしたシステムでもクラスが数千個もできて管理できないやつ
継承とか再利用って何か修正があった時の影響調査に時間ががかるだけで全然楽にならない
885デフォルトの名無しさん (アウアウウー Sa0f-qWno)
2020/03/08(日) 11:33:52.09ID:4UY9QB9Za いまだにVBAで新規開発してるようなレベルの現場ならまあそうなるだろうな
886デフォルトの名無しさん (アウアウウー Sa0f-Lqe9)
2020/03/08(日) 11:35:57.68ID:/EkcPSuMa887デフォルトの名無しさん (ワッチョイ 3b35-slHA)
2020/03/08(日) 12:16:04.79ID:pGwY8Xd00 Excelで会社の進捗表や推移表を作っているのですが
VBAで作れるようになりたいです。
どの本から勉強するのがオススメでしょうか?
VBAで作れるようになりたいです。
どの本から勉強するのがオススメでしょうか?
888デフォルトの名無しさん (ワッチョイ 9f01-F74f)
2020/03/08(日) 12:47:55.93ID:K4cIg85y0 >>884
バカが使うとどんなツールでも意味ないというだけの話
バカが使うとどんなツールでも意味ないというだけの話
889デフォルトの名無しさん (ワッチョイ 3b7c-Ff7g)
2020/03/08(日) 12:57:51.40ID:wGN5QR/10 >>887
VBAはExcelだけで実現が難しいことをやるためのもんなのでExcelでできることはあまりVBAを使わない方がいい
VBAはExcelだけで実現が難しいことをやるためのもんなのでExcelでできることはあまりVBAを使わない方がいい
890デフォルトの名無しさん (アウアウエー Sa3f-2dlT)
2020/03/08(日) 13:07:04.25ID:HrEjfMsja >>887
vbaの本の前に、プログラミングの基礎から学んだ方がいいのでは?
vbaの本の前に、プログラミングの基礎から学んだ方がいいのでは?
891デフォルトの名無しさん (アウアウエー Sa3f-2dlT)
2020/03/08(日) 13:08:28.89ID:HrEjfMsja プログラミングの基礎は知ってるならいいけど
892デフォルトの名無しさん (ワッチョイ 3b7c-TJPv)
2020/03/08(日) 13:12:36.00ID:wGN5QR/10 ExcelでVBA使うだけならプログラミング基礎からやる必要はない
893デフォルトの名無しさん (アウアウウー Sa0f-qWno)
2020/03/08(日) 14:13:36.46ID:4UY9QB9Za894デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/08(日) 17:13:32.60ID:q3PBpoad0895デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/08(日) 17:15:23.42ID:q3PBpoad0 >>887
表紙がやさしそうな本から読めば?
何冊も読む必要があるけど
最初から分厚いの読むより楽
あとVBAで作ることに意味があるのは
定型化や自動化できる部分なんで
業務を把握することがVBA以上に大事
表紙がやさしそうな本から読めば?
何冊も読む必要があるけど
最初から分厚いの読むより楽
あとVBAで作ることに意味があるのは
定型化や自動化できる部分なんで
業務を把握することがVBA以上に大事
896デフォルトの名無しさん (アウアウエー Sa3f-Inmc)
2020/03/08(日) 17:29:03.33ID:aqmzj8A6a897デフォルトの名無しさん (アークセー Sx4f-HOkB)
2020/03/08(日) 17:42:48.33ID:qsdyu9ekx 局所関数はむしろローカルスコープ内でイテレータに渡して使い捨てるだけというイメージだが
変数に仕込んであちこちで使い回したりしてるのか
変数に仕込んであちこちで使い回したりしてるのか
898デフォルトの名無しさん (ワッチョイ bb8e-jhwo)
2020/03/08(日) 18:34:24.60ID:eh2q8TLt0899デフォルトの名無しさん (ワッチョイ 8b1d-VG+X)
2020/03/08(日) 19:56:01.62ID:qHSkoWsm0 実務経験1年で月収80万稼げるエンジニアになった理由
https://www.youtube.com/watch?v=DrbbyGsHQic
意識が低いエンジニアこそフリーランスになれ
https://www.youtube.com/watch?v=nSEaAJlgjbQ
フリーランスエンジニアの週3労働ってどんな感じ?
https://www.youtube.com/watch?v=8yjoDCdbzMc
ぼくがスキルのない社畜ならこうやって脱する
https://www.youtube.com/watch?v=aae8xxbUlMM
初めて人を雇ったらもう二度とサラリーマンをやりたくないと思った話
https://www.youtube.com/watch?v=U0OCGRVLFsM
プログラミングは文系でも余裕で出来ます!理由を現役プログラマーが解説
https://www.youtube.com/watch?v=iBOeiSKBIW8
貧乏人こそ社会不適合者
https://www.youtube.com/watch?v=O3BT72BIBJI
元ド貧乏が教える】貧乏を抜け出すための2つの考え方
https://www.youtube.com/watch?v=IRrCgTy3ckc
より良いオファー貰ってるのに転職しないとか何考えてるの?
https://www.youtube.com/watch?v=i0J6uRhlj7o
https://www.youtube.com/watch?v=DrbbyGsHQic
意識が低いエンジニアこそフリーランスになれ
https://www.youtube.com/watch?v=nSEaAJlgjbQ
フリーランスエンジニアの週3労働ってどんな感じ?
https://www.youtube.com/watch?v=8yjoDCdbzMc
ぼくがスキルのない社畜ならこうやって脱する
https://www.youtube.com/watch?v=aae8xxbUlMM
初めて人を雇ったらもう二度とサラリーマンをやりたくないと思った話
https://www.youtube.com/watch?v=U0OCGRVLFsM
プログラミングは文系でも余裕で出来ます!理由を現役プログラマーが解説
https://www.youtube.com/watch?v=iBOeiSKBIW8
貧乏人こそ社会不適合者
https://www.youtube.com/watch?v=O3BT72BIBJI
元ド貧乏が教える】貧乏を抜け出すための2つの考え方
https://www.youtube.com/watch?v=IRrCgTy3ckc
より良いオファー貰ってるのに転職しないとか何考えてるの?
https://www.youtube.com/watch?v=i0J6uRhlj7o
900デフォルトの名無しさん (ワッチョイ 8b02-rTj6)
2020/03/08(日) 19:57:42.44ID:MJ8bCrVY0 こういう宣伝は嫌われるからな。
次から気をつけろよ
次から気をつけろよ
>>879
>・名前空間がない
C言語にも名前空間はありません。そんなCでもうまくやっているのだから、どうでもいい問題でしょうね
>・クラスが継承出来ない
OO 界は継承は「ダメな子」「出来ない子」「要らない子」「出来ちゃった…」な存在なのは周知の事実
継承は排除されつつあり、かわりに継承と等価な委譲を使います。VBA でも委譲を使えばいいのです
>・局所関数が作れない
C言語にも局所関数はありません。そんなCでもうまくやっているのだから、どうでもいい問題でしょうね
>・名前空間がない
C言語にも名前空間はありません。そんなCでもうまくやっているのだから、どうでもいい問題でしょうね
>・クラスが継承出来ない
OO 界は継承は「ダメな子」「出来ない子」「要らない子」「出来ちゃった…」な存在なのは周知の事実
継承は排除されつつあり、かわりに継承と等価な委譲を使います。VBA でも委譲を使えばいいのです
>・局所関数が作れない
C言語にも局所関数はありません。そんなCでもうまくやっているのだから、どうでもいい問題でしょうね
902デフォルトの名無しさん (ワッチョイ 9bda-o1n2)
2020/03/08(日) 20:08:42.71ID:M2hf0BiX0903デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/08(日) 20:26:40.85ID:q3PBpoad0904デフォルトの名無しさん (ワッチョイ ab01-f/nk)
2020/03/08(日) 21:58:47.86ID:mw19GHmw0905デフォルトの名無しさん (ワッチョイ 6b40-5zdl)
2020/03/08(日) 22:22:13.50ID:Z/oySaPq0906デフォルトの名無しさん (ブーイモ MM7f-d2Bu)
2020/03/08(日) 22:30:33.43ID:nDN087zZM907デフォルトの名無しさん (ブーイモ MM7f-d2Bu)
2020/03/08(日) 22:31:58.19ID:nDN087zZM 継承は、スマホアプリや他のいろんなプラットフォームで利用されてるぞ
>>903
>Cがあまり使われなくなった理由だろう
冗談でしょう?
C は今でもバンバン使われていますよ、linux は C で記述されており C++ は受け付けません
あと汎用ライブラリ zlib とかは、多言語から呼び出せるように、あえて C で記述しています
汎用ライブラリは、それが汎用性を目指せば目指すほど、C で書き直される運命にあるのです
>Cがあまり使われなくなった理由だろう
冗談でしょう?
C は今でもバンバン使われていますよ、linux は C で記述されており C++ は受け付けません
あと汎用ライブラリ zlib とかは、多言語から呼び出せるように、あえて C で記述しています
汎用ライブラリは、それが汎用性を目指せば目指すほど、C で書き直される運命にあるのです
>>905
>継承代わりに多用してたらスパゲッティの温床になるから、もし実務でやってるなら減らした方がいい
最近の動向は真逆ですよ
継承こそ、スパゲッティの温床であり、継承は is-a 関係以外では使ってはいけない、継承こそ制限されるべきです
私も https://mevius.5ch.net/test/read.cgi/tech/1434079972/37 では継承を使っていましたが、
https://mevius.5ch.net/test/read.cgi/tech/1434079972/51 では委譲に変えました、委譲に換えて目障りなキャストが減りすっきりしました…
>継承代わりに多用してたらスパゲッティの温床になるから、もし実務でやってるなら減らした方がいい
最近の動向は真逆ですよ
継承こそ、スパゲッティの温床であり、継承は is-a 関係以外では使ってはいけない、継承こそ制限されるべきです
私も https://mevius.5ch.net/test/read.cgi/tech/1434079972/37 では継承を使っていましたが、
https://mevius.5ch.net/test/read.cgi/tech/1434079972/51 では委譲に変えました、委譲に換えて目障りなキャストが減りすっきりしました…
910デフォルトの名無しさん (ワッチョイ eb94-Fh0b)
2020/03/08(日) 23:16:43.48ID:LxdcdXu+0 Excelvab初心者です。血からを貸してください。
ユーザーフォームで商品名をExcelのシート(商品マスター)に入力しています。
A列には番号が自動的にB列にはユーザーフォームで入力した商品名が入力されます。
B2に(例えば、まぐろ)が入力された状態で入力フォームにまぐろが入力されるとエラーがでるようにしたいのですがうまくいきません。お力をお貸しください
ユーザーフォームで商品名をExcelのシート(商品マスター)に入力しています。
A列には番号が自動的にB列にはユーザーフォームで入力した商品名が入力されます。
B2に(例えば、まぐろ)が入力された状態で入力フォームにまぐろが入力されるとエラーがでるようにしたいのですがうまくいきません。お力をお貸しください
911デフォルトの名無しさん (ワッチョイ 9bda-o1n2)
2020/03/08(日) 23:27:25.61ID:M2hf0BiX0912デフォルトの名無しさん (アークセー Sx4f-HOkB)
2020/03/08(日) 23:37:07.95ID:qsdyu9ekx913デフォルトの名無しさん (ワッチョイ eff7-e9xa)
2020/03/08(日) 23:42:59.94ID:KmiE4RE50 プライマリキーとかデータ制約の話ならSQL使うべきや
914デフォルトの名無しさん (ワッチョイ 8b59-iTVg)
2020/03/09(月) 01:17:58.71ID:boUatrmd0 >>910
まともに文章も書けない馬鹿には無理
まともに文章も書けない馬鹿には無理
915デフォルトの名無しさん (ワッチョイ eb94-Fh0b)
2020/03/09(月) 01:26:09.58ID:7fIcR6pI0916デフォルトの名無しさん (ワッチョイ eb94-Fh0b)
2020/03/09(月) 01:38:14.56ID:7fIcR6pI0917デフォルトの名無しさん (ワッチョイ eb94-o1n2)
2020/03/09(月) 01:40:02.32ID:7fIcR6pI0 現在の入力フォームはこのようは形です。
Private Sub btnEntry_Click()
Dim rv As Integer
r = Range("A" & Rows.Count).End(xlUp).Offset(1).Row
Worksheets("商品マスタ").Range("A" & r).Value = r - 1
Worksheets("商品マスタ").Range("B" & r).Value = txtGoods.Text
txtGoods.Value = ""
txtGoods.SetFocus
End Sub
Private Sub btnEntry_Click()
Dim rv As Integer
r = Range("A" & Rows.Count).End(xlUp).Offset(1).Row
Worksheets("商品マスタ").Range("A" & r).Value = r - 1
Worksheets("商品マスタ").Range("B" & r).Value = txtGoods.Text
txtGoods.Value = ""
txtGoods.SetFocus
End Sub
918デフォルトの名無しさん (ワッチョイ cbad-wzO4)
2020/03/09(月) 01:50:53.63ID:ajCpPJPb0919デフォルトの名無しさん (ワッチョイ 9bda-o1n2)
2020/03/09(月) 02:52:58.81ID:1wOyNmDi0 Private Sub btnEntry_Click()
On Error GoTo errorStep
Const PRODUCT_TBL_NAME As String = "商品マスタ"
Const PRODUCT_NAME_COLUMN As Long = 2 '商品名が登録されているカラム
Dim productTbl As Worksheet
Set productTbl = ThisWorkbook.Worksheets(PRODUCT_TBL_NAME)
With productTbl
Dim productRecord As Variant
productRecord = .Range(.Cells(1, 1), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, .Cells(1, .Columns.Count).End(xlToLeft).Column)).Value
End With
Dim existsItem As Boolean
existsItem = False
Dim i As Long
For i = LBound(productRecord, 1) + 1 To UBound(productRecord, 1) '1行目はタイトルなので+1にて検索を省く
If productRecord(i, PRODUCT_NAME_COLUMN) = txtGoods.Text Then
existsItem = True
GoTo errorStep
End If
Next
With productTbl
.Range(.Cells(UBound(productRecord, 1) + 1, 1), .Cells(UBound(productRecord, 1) + 1, PRODUCT_NAME_COLUMN)).Value = Array(UBound(productRecord, 1), txtGoods.Text)
End With
With txtGoods
.Value = ""
.SetFocus
End With
errorStep:
If existsItem Then MsgBox txtGoods.Text & "もとい、まぐろが重複しています", vbCritical + vbOKOnly, "重複"
ElseIf Err.Number <> 0 Then MsgBox Err.Number & Err.Description
End Sub
On Error GoTo errorStep
Const PRODUCT_TBL_NAME As String = "商品マスタ"
Const PRODUCT_NAME_COLUMN As Long = 2 '商品名が登録されているカラム
Dim productTbl As Worksheet
Set productTbl = ThisWorkbook.Worksheets(PRODUCT_TBL_NAME)
With productTbl
Dim productRecord As Variant
productRecord = .Range(.Cells(1, 1), .Cells(.Cells(.Rows.Count, 1).End(xlUp).Row, .Cells(1, .Columns.Count).End(xlToLeft).Column)).Value
End With
Dim existsItem As Boolean
existsItem = False
Dim i As Long
For i = LBound(productRecord, 1) + 1 To UBound(productRecord, 1) '1行目はタイトルなので+1にて検索を省く
If productRecord(i, PRODUCT_NAME_COLUMN) = txtGoods.Text Then
existsItem = True
GoTo errorStep
End If
Next
With productTbl
.Range(.Cells(UBound(productRecord, 1) + 1, 1), .Cells(UBound(productRecord, 1) + 1, PRODUCT_NAME_COLUMN)).Value = Array(UBound(productRecord, 1), txtGoods.Text)
End With
With txtGoods
.Value = ""
.SetFocus
End With
errorStep:
If existsItem Then MsgBox txtGoods.Text & "もとい、まぐろが重複しています", vbCritical + vbOKOnly, "重複"
ElseIf Err.Number <> 0 Then MsgBox Err.Number & Err.Description
End Sub
920デフォルトの名無しさん (スププ Sdbf-rBsR)
2020/03/09(月) 08:07:04.13ID:YSbl2F5Md921デフォルトの名無しさん (スプッッ Sdbf-kTmN)
2020/03/09(月) 09:24:28.40ID:ZxqpmtOQd クソコードの見本
922デフォルトの名無しさん (オッペケ Sr4f-wzO4)
2020/03/09(月) 10:40:08.36ID:4/MgldDWr Excel VBAの手書きで入力する InkEditコントロールを利用しているんだけど、最初の一画目を横に引くと線が消えて右に進んでしまう。
(一を描くと手書きと認識されずに右に進むになってしまう)
逆に一画目を右から左に引くと同じように消えるけどバックスペースとして認識するのか入力文字が一文字消える。
何かのコントロールが入っているのかな?
一画目からきちんと手書き認識させるにはどうしたらいいのか教えてほしいです。
(一を描くと手書きと認識されずに右に進むになってしまう)
逆に一画目を右から左に引くと同じように消えるけどバックスペースとして認識するのか入力文字が一文字消える。
何かのコントロールが入っているのかな?
一画目からきちんと手書き認識させるにはどうしたらいいのか教えてほしいです。
923デフォルトの名無しさん (ワッチョイ 1bce-xiWk)
2020/03/09(月) 10:48:17.23ID:122ZuEx00924デフォルトの名無しさん (オッペケ Sr4f-wzO4)
2020/03/09(月) 12:05:57.48ID:JOXwKeygr VBAで「タッチして描写する」を呼び出したい場合はどう登録すればいいですか?
925デフォルトの名無しさん (ワッチョイ 0fcc-xiWk)
2020/03/09(月) 12:19:34.60ID:XqBoaxlA0 >>917
Private Sub btnEntry_Click()
Dim r As Integer
r = Range("A" & Rows.Count).End(xlUp).Offset(1).Row
With Worksheets("商品マスタ")
If Application.CountIf(.Range("B:B"), txtGoods.Text) = 0 Then
.Range("A" & r).Value = r - 1
.Range("B" & r).Value = txtGoods.Text
lblAlert.Caption = ""
Else
lblAlert.Caption = "入力済です"
End If
End With
txtGoods.SetFocus
Application.Wait Now + 1 / 24 / 60 / 60 / 10
SendKeys "^a", True
End Sub
Private Sub btnEntry_Click()
Dim r As Integer
r = Range("A" & Rows.Count).End(xlUp).Offset(1).Row
With Worksheets("商品マスタ")
If Application.CountIf(.Range("B:B"), txtGoods.Text) = 0 Then
.Range("A" & r).Value = r - 1
.Range("B" & r).Value = txtGoods.Text
lblAlert.Caption = ""
Else
lblAlert.Caption = "入力済です"
End If
End With
txtGoods.SetFocus
Application.Wait Now + 1 / 24 / 60 / 60 / 10
SendKeys "^a", True
End Sub
926デフォルトの名無しさん (ワッチョイ 85da-drwQ)
2020/03/11(水) 22:56:52.92ID:tqnB5YsS0 いつも思うんですけど、
With ActiveSheet
.Range(.Cells(1, 1), .Cells(2, 3))
End With
って、シンプルに
ActiveSheet.Range(1, 1, 2, 3)
にしてくれませんかねぇ。
With ActiveSheet
.Range(.Cells(1, 1), .Cells(2, 3))
End With
って、シンプルに
ActiveSheet.Range(1, 1, 2, 3)
にしてくれませんかねぇ。
927デフォルトの名無しさん (ワッチョイ 4d7c-9blg)
2020/03/11(水) 23:07:19.01ID:mSxLcM6q0 シンプル重視か把握しやすさ重視は人によるんでないの
928デフォルトの名無しさん (ワッチョイ 4d7c-9blg)
2020/03/11(水) 23:16:24.86ID:mSxLcM6q0 自分的にしてほしいのはこれ
rows(3, 5)
columns("a", "c")
rangeはOKなのになんでダメなのか
rows(3, 5)
columns("a", "c")
rangeはOKなのになんでダメなのか
929デフォルトの名無しさん (ワッチョイ e5ce-drwQ)
2020/03/11(水) 23:28:12.64ID:GnLLEs2o0 >>928
範囲指定ならrows("3:5") columns("a:c")とか書けるけど、そういう意味じゃなくて?
範囲指定ならrows("3:5") columns("a:c")とか書けるけど、そういう意味じゃなくて?
930デフォルトの名無しさん (ワッチョイ 4d7c-9blg)
2020/03/11(水) 23:43:13.84ID:mSxLcM6q0931デフォルトの名無しさん (アークセー Sx91-qc3J)
2020/03/12(木) 00:49:49.85ID:1HHLdXOlx >>928
二次元のオフセット値で座標確定しなきゃならないRangeと違ってRowsやColumnsは一次元のオフセットで場所を指定できるからね
行や列の指定に多次元引数を許容する実利が少ない
逆にRangeだって三次元以上のインデックスを指定できるようにする意味がないから二次元までのインデックスになってるわけで
二次元のオフセット値で座標確定しなきゃならないRangeと違ってRowsやColumnsは一次元のオフセットで場所を指定できるからね
行や列の指定に多次元引数を許容する実利が少ない
逆にRangeだって三次元以上のインデックスを指定できるようにする意味がないから二次元までのインデックスになってるわけで
932デフォルトの名無しさん (ワッチョイ 85b0-bihA)
2020/03/12(木) 01:58:06.82ID:NVBYTwVX0 いや実利ありまくりだろうが
933デフォルトの名無しさん (ワッチョイ 09e6-oTi3)
2020/03/12(木) 08:21:08.26ID:2qpmsnq30934デフォルトの名無しさん (ワッチョイ eecc-drwQ)
2020/03/12(木) 10:33:01.07ID:F1q/9YDt0 925だけど、ごめんなさい
NOWだと秒未満が扱えないから、現在時刻が0.1秒超えるとコマンド実行分しかwaitしてないのか
以下の様に訂正します
×Application.Wait Now + 1 / 24 / 60 / 60 / 10
○Application.Wait [Now()] + 1 / 24 / 60 / 60 / 10
[]はワークシート関数らしいね
NOWだと秒未満が扱えないから、現在時刻が0.1秒超えるとコマンド実行分しかwaitしてないのか
以下の様に訂正します
×Application.Wait Now + 1 / 24 / 60 / 60 / 10
○Application.Wait [Now()] + 1 / 24 / 60 / 60 / 10
[]はワークシート関数らしいね
935デフォルトの名無しさん (ワントンキン MM8d-drUO)
2020/03/12(木) 14:14:34.28ID:renYLELNM セルの組み合わせを検索したいんですがfind関数のAND使うしか無いですかね?
A1セルかつB1セルの値をC,D列から検索するような事をしたいです。
A1セルかつB1セルの値をC,D列から検索するような事をしたいです。
936デフォルトの名無しさん (オッペケ Sr91-tJbe)
2020/03/12(木) 15:35:29.52ID:+5QmAI+3r みなさんが使ってるパソコンのスペック教えて下さい
できれば機種もおながいします
できれば機種もおながいします
937デフォルトの名無しさん (ワッチョイ 4d7c-9blg)
2020/03/12(木) 19:36:43.40ID:RTn0fWyO0 >>935
1セルずつ自分で調べる
1セルずつ自分で調べる
938デフォルトの名無しさん (ドコグロ MM4a-A9/a)
2020/03/12(木) 19:42:45.16ID:kpCmVf8sM >>936
そんなの知って何がしたいんだよ
そんなの知って何がしたいんだよ
939デフォルトの名無しさん (アウアウクー MM51-55Jx)
2020/03/12(木) 20:56:37.31ID:okuX4gckM >>935
ドクターゲロに聞く
ドクターゲロに聞く
940デフォルトの名無しさん (ワッチョイ 0242-gN7l)
2020/03/12(木) 21:04:05.61ID:2HpOUvGf0 >>935
AB列の値を結合した検索用の列を追加すればいいんじゃね
AB列の値を結合した検索用の列を追加すればいいんじゃね
941デフォルトの名無しさん (ワッチョイ 858a-JgDO)
2020/03/12(木) 21:42:19.02ID:eUhuAVRD0942デフォルトの名無しさん (ワッチョイ 5102-CfvC)
2020/03/12(木) 22:03:09.82ID:R0C6kYZh0 じゃあ、CyrixMII 233MHzぅ!
943デフォルトの名無しさん (ワッチョイ 011f-ZW3Z)
2020/03/12(木) 22:56:49.72ID:nToT5DGB0 datファイルやtxtファイル読んで配列に入れたい場合って、EOFまで一行ずつ読んで配列要素をredimするのがキレイで分かりやすい?
944デフォルトの名無しさん (ワントンキン MM8d-drUO)
2020/03/12(木) 23:24:55.83ID:renYLELNM945デフォルトの名無しさん (ワッチョイ 4d7c-9blg)
2020/03/12(木) 23:52:42.43ID:RTn0fWyO0 >>943
一括で読んでsplitする手もある
一括で読んでsplitする手もある
946デフォルトの名無しさん (オッペケ Sr91-tJbe)
2020/03/13(金) 00:22:47.36ID:wWT1UGjTr みんなどうやって勉強したの?
どく学?
どく学?
947デフォルトの名無しさん (ワッチョイ a1ad-M7Q/)
2020/03/13(金) 00:28:32.32ID:ZeWzgGw60 他の言語やってれば独学で(も)行けるが
もし始めてなら入門書読んだ方が早いかも
もし始めてなら入門書読んだ方が早いかも
948デフォルトの名無しさん (オッペケ Sr91-tJbe)
2020/03/13(金) 00:38:00.66ID:/vlIPRjer >>947
サイトで調べてやろうかと思ったけどなかなか大変そうなので買って読んでみます!ありがとうございます!
サイトで調べてやろうかと思ったけどなかなか大変そうなので買って読んでみます!ありがとうございます!
949デフォルトの名無しさん (アウアウウー Sac5-pUvF)
2020/03/13(金) 03:28:46.12ID:OcgrooQ3a >>946
もう20年以上前だがな
もう20年以上前だがな
950デフォルトの名無しさん (ワッチョイ eef2-9blg)
2020/03/13(金) 07:21:17.73ID:8ov/WEIe0 インプレス『できるExcelマクロ&VBA』他、期間限定で全文公開
https://book.impress.co.jp/items/tameshiyomi
https://book.impress.co.jp/items/tameshiyomi
951デフォルトの名無しさん (アウアウウー Sac5-Syvm)
2020/03/13(金) 09:45:24.42ID:S934/UwJa VB.NET 廃止か
まさかVBAより先に死ぬとはな
まさかVBAより先に死ぬとはな
952デフォルトの名無しさん (ワッチョイ ed8e-TDt8)
2020/03/13(金) 11:43:51.46ID:hr/TjqNF0 >>951
ソースどこ?
ソースどこ?
953デフォルトの名無しさん (オッペケ Sr91-tJbe)
2020/03/13(金) 11:44:52.56ID:ojnGj1Dgr954デフォルトの名無しさん (ワッチョイ a1ad-M7Q/)
2020/03/13(金) 12:07:27.45ID:ZeWzgGw60955デフォルトの名無しさん (ワッチョイ 09e6-oTi3)
2020/03/13(金) 14:33:35.87ID:DsczgAs80 https://devblogs.microsoft.com/vbteam/visual-basic-support-planned-for-net-5-0/
今後、Visual Basicを言語として進化させる予定はありません。
言語の変更を必要とする.NET Coreの将来の機能は、Visual Basicではサポートされない可能性があります。
プラットフォームの違いにより、.NET Framework上のVisual Basicと.NET Coreにはいくつかの違いがあります。
今後、Visual Basicを言語として進化させる予定はありません。
言語の変更を必要とする.NET Coreの将来の機能は、Visual Basicではサポートされない可能性があります。
プラットフォームの違いにより、.NET Framework上のVisual Basicと.NET Coreにはいくつかの違いがあります。
956デフォルトの名無しさん (ワッチョイ b901-FfQu)
2020/03/13(金) 15:39:53.35ID:yxSDhoD50957デフォルトの名無しさん (ワッチョイ ed8e-TDt8)
2020/03/13(金) 16:28:43.22ID:hr/TjqNF0 廃止じゃないじゃん
馬鹿は死ねよ
馬鹿は死ねよ
958デフォルトの名無しさん (ブーイモ MMa5-1ZxF)
2020/03/13(金) 18:21:15.27ID:cgyHyg3GM >>957
死ぬのは、スレ違いネタに必死になってるおまえの方だよ
死ぬのは、スレ違いネタに必死になってるおまえの方だよ
959デフォルトの名無しさん (ワッチョイ 85da-pUvF)
2020/03/13(金) 23:23:36.16ID:VPbZTknR0 いやいやお前だろ
960デフォルトの名無しさん (ワッチョイ 5102-CfvC)
2020/03/13(金) 23:39:30.54ID:sLWP0xGH0 わかった!オレがしぬ!
961デフォルトの名無しさん (ワッチョイ c633-ioXh)
2020/03/14(土) 09:26:33.93ID:cldo6UeB0 罰が当たってコロナに感染重症化しそう
962デフォルトの名無しさん (ワッチョイ 8549-rHbc)
2020/03/14(土) 09:28:47.00ID:XOiIzQdu0 わかった!おれもしぬ!
963デフォルトの名無しさん (アウアウウー Sac5-CfvC)
2020/03/14(土) 09:55:43.66ID:8jJQrMy3a はいはい!オレもしぬ!
964デフォルトの名無しさん (ワッチョイ 0994-GmOQ)
2020/03/14(土) 16:27:40.06ID:juE+caHb0 A列の数字に対してabc順に処理をしたいんですがどのような構文にすればいいでしょうか?
A B C
1 a d
1 b e
1 c f
2 g i
2 h j
3 k l
A B C
1 a d
1 b e
1 c f
2 g i
2 h j
3 k l
965デフォルトの名無しさん (ワッチョイ 2eef-drwQ)
2020/03/14(土) 17:03:17.53ID:9mSKrJ1e0966デフォルトの名無しさん (ワッチョイ 0994-GmOQ)
2020/03/14(土) 17:48:23.61ID:juE+caHb0967デフォルトの名無しさん (ワッチョイ 2eba-ioXh)
2020/03/14(土) 18:22:21.70ID:nT2WeRIi0968デフォルトの名無しさん (ワッチョイ feca-FfQu)
2020/03/14(土) 18:47:53.73ID:7lWVnCph0969デフォルトの名無しさん (ワッチョイ 4de6-drwQ)
2020/03/14(土) 18:53:08.37ID:JrGvwLlh0 アルファベット順だろ
A列がソートされてるんならIFで一個下と比較すりゃいいだろ
されてないならソートしろ
A列がソートされてるんならIFで一個下と比較すりゃいいだろ
されてないならソートしろ
970デフォルトの名無しさん (ワッチョイ a1ad-M7Q/)
2020/03/14(土) 18:53:46.16ID:wiK5yt+U0971デフォルトの名無しさん (ワッチョイ ed8e-TDt8)
2020/03/14(土) 19:24:58.83ID:JhfhrpV40 馬鹿は自分頭の中で整理できないから馬鹿なんだよな
972デフォルトの名無しさん (ワッチョイ 2eef-drwQ)
2020/03/14(土) 19:50:52.55ID:9mSKrJ1e0 >>966
1((a,b,c),(d,e,f)),2((g,h),(i,j)),3((k),(l)) かな
どうも、アルファベット順というのも座標の説明に使っただけで、それでソートするってわけでもなさそうだね
組もごちゃ混ぜになってるわけでもないっぽいね
なら
上から下へ進むループを組んで、組が変わったら位置を記憶して、その範囲でB列、C列の順にループ
1((a,b,c),(d,e,f)),2((g,h),(i,j)),3((k),(l)) かな
どうも、アルファベット順というのも座標の説明に使っただけで、それでソートするってわけでもなさそうだね
組もごちゃ混ぜになってるわけでもないっぽいね
なら
上から下へ進むループを組んで、組が変わったら位置を記憶して、その範囲でB列、C列の順にループ
973デフォルトの名無しさん (ワッチョイ 0242-gN7l)
2020/03/14(土) 19:54:23.48ID:E0DYL6Pb0 すげーよな
昇順になってんだから頭から順番に処理すりゃいいんじゃね?としか考えつかない
昇順になってんだから頭から順番に処理すりゃいいんじゃね?としか考えつかない
974デフォルトの名無しさん (ワッチョイ 0994-GmOQ)
2020/03/14(土) 21:29:14.28ID:juE+caHb0975デフォルトの名無しさん (アウアウエー Sa8a-MIfP)
2020/03/14(土) 21:46:30.89ID:uUhF8jFda 別のブックのVBAをRUNしたらMsgBoxが出てきてボタンをクリックしないといけなくなったんですが、
VBAでボタンをクリックする方法はないでしょうか。
その別のVBAの方は修正したくないので。
VBAでボタンをクリックする方法はないでしょうか。
その別のVBAの方は修正したくないので。
976デフォルトの名無しさん (ワッチョイ b901-AGez)
2020/03/14(土) 22:44:44.71ID:2hmQ2yxV0 sendkey enterでええんじゃね
977デフォルトの名無しさん (ワッチョイ 02ad-M7Q/)
2020/03/14(土) 23:46:23.57ID:1CTohHuR0 タッチディスプレイでエクセルドロップダウンリストが選択しにくいのでVbaでユーザーフォームで
ドロップダウンリストを全部表示させて選択式にしたいんだけど何か良い方法ありますか?
ドロップダウンリストを全部表示させて選択式にしたいんだけど何か良い方法ありますか?
978デフォルトの名無しさん (ワッチョイ b901-R/wk)
2020/03/15(日) 01:41:25.49ID:B9oF4/gh0 VBEの各種ウィンドウ(プロパティウィンドウとかローカルウィンドウとか)を
マウスでドラッグすると、ウィンドウの枠がマウスポインタの動きから
遅れて動き、ウィンドウの枠がチラつくのは自分だけですか?
CPU使用率は10%未満なのでスペックの問題ではないと思います。
OSはWin10でエクセル2010の環境です。
マウスでドラッグすると、ウィンドウの枠がマウスポインタの動きから
遅れて動き、ウィンドウの枠がチラつくのは自分だけですか?
CPU使用率は10%未満なのでスペックの問題ではないと思います。
OSはWin10でエクセル2010の環境です。
980978 (ワッチョイ b901-R/wk)
2020/03/15(日) 03:47:53.03ID:B9oF4/gh0 すいません。意味が分かりにくいので再投稿します。
VBEの各種ウィンドウ(プロパティウィンドウとかローカルウィンドウとか)を
マウスでドラッグすると、そのウィンドウの枠がチラつきながら
マウスポインタよりも目に見えて遅れて動きます。
これは直すにはどうしたら良いでしょうか。
CPU使用率は10%未満でメモリ使用率は50%未満なので
スペックの問題ではないと思います。
OSはWin10でエクセル2010の環境です。
VBEの各種ウィンドウ(プロパティウィンドウとかローカルウィンドウとか)を
マウスでドラッグすると、そのウィンドウの枠がチラつきながら
マウスポインタよりも目に見えて遅れて動きます。
これは直すにはどうしたら良いでしょうか。
CPU使用率は10%未満でメモリ使用率は50%未満なので
スペックの問題ではないと思います。
OSはWin10でエクセル2010の環境です。
981デフォルトの名無しさん (スプッッ Sd02-TKmo)
2020/03/15(日) 07:14:17.59ID:DNgNcsNnd 仕様なので気にしない事
982デフォルトの名無しさん (ワッチョイ 2eef-drwQ)
2020/03/15(日) 07:51:34.39ID:3dklKXuL0983デフォルトの名無しさん (オッペケ Sr91-lt+r)
2020/03/15(日) 14:54:37.12ID:0UhNKPF0r (インクの開始)とかをマクロボタンに登録可能?
各機能をマクロボタン化したいけど、どの機能がどのマクロか探しても出てこない…
各機能をマクロボタン化したいけど、どの機能がどのマクロか探しても出てこない…
984デフォルトの名無しさん (ワッチョイ 2eba-ioXh)
2020/03/15(日) 15:25:04.36ID:/MmP9RhE0 これ?
With Application.CommandBars
If .GetEnabledMso("InkingStart") = True Then
.ExecuteMso "InkingStart"
End If
End With
With Application.CommandBars
If .GetEnabledMso("InkingStart") = True Then
.ExecuteMso "InkingStart"
End If
End With
985デフォルトの名無しさん (ワッチョイ 85da-drwQ)
2020/03/15(日) 17:52:47.26ID:LHwp9FeQ0 描画にインク機能があるが、再生が無い。
2019なのに何故?
2019なのに何故?
986デフォルトの名無しさん (スップ Sd02-LpqU)
2020/03/15(日) 17:56:02.76ID:ro5SoUspd >>983
まあ回答じゃないけど、その場で
Dim cb As Commandber
Dim ctl As CommandbarControl
For Each cb In Application.Commandbars
Debug.Print cb.Name
For Each ctl In cb.Controls
Debug.Print " " & ctl.Name
Next
Next
的なのを実行して調べるな。(出先なのでExcel触れないから間違ってるかも。NameはCaptionか?)
大量に出てくるからDebug.Printじゃ間に合わないだろうから、GUIにしてリストボックスとかにするのが現実的。
まあ回答じゃないけど、その場で
Dim cb As Commandber
Dim ctl As CommandbarControl
For Each cb In Application.Commandbars
Debug.Print cb.Name
For Each ctl In cb.Controls
Debug.Print " " & ctl.Name
Next
Next
的なのを実行して調べるな。(出先なのでExcel触れないから間違ってるかも。NameはCaptionか?)
大量に出てくるからDebug.Printじゃ間に合わないだろうから、GUIにしてリストボックスとかにするのが現実的。
987デフォルトの名無しさん (ワッチョイ 8279-AXJv)
2020/03/15(日) 23:43:09.19ID:KOSOM8NC0 >OSはWin10でエクセル2010の環境です。
これだよ
2013以上にすると直るよ
これだよ
2013以上にすると直るよ
988デフォルトの名無しさん (ワッチョイ e5ce-drwQ)
2020/03/16(月) 09:42:32.24ID:zMoP23Lv0 Excelの内部構造が大幅に変わったのは2017からじゃなかったか
989デフォルトの名無しさん (ワッチョイ 85da-drwQ)
2020/03/16(月) 11:24:29.57ID:DJ4MbV7t0 2013じゃね
990デフォルトの名無しさん (オッペケ Sr91-lt+r)
2020/03/16(月) 17:48:16.80ID:Ehy6Otktr >>984
タッチパネルだとエラーがでたり、何も動かなかったりするね…
タッチパネルだとエラーがでたり、何も動かなかったりするね…
991デフォルトの名無しさん (オッペケ Sr91-lt+r)
2020/03/16(月) 17:49:06.17ID:Ehy6Otktr992デフォルトの名無しさん (アウアウエー Sa8a-MIfP)
2020/03/16(月) 20:29:35.60ID:YT6hS8mka >>975-976
待ちになったままsendkey の行が処理されないですわ
待ちになったままsendkey の行が処理されないですわ
993デフォルトの名無しさん (スップ Sd02-LpqU)
2020/03/16(月) 20:57:04.54ID:G4gOAdERd994デフォルトの名無しさん (アウアウエー Sa8a-MIfP)
2020/03/16(月) 21:45:49.75ID:YT6hS8mka >>993
こんな感じか
'CreateObject("Excel.Application")を宣言し変数を作成します。 Set myApp = CreateObject("Excel.Application") '以下のコードがエクセルを別プロセスで開くための肝になる点です。 myApp.Workbooks.Open "開く対象のファイルのフルパス" '
こんな感じか
'CreateObject("Excel.Application")を宣言し変数を作成します。 Set myApp = CreateObject("Excel.Application") '以下のコードがエクセルを別プロセスで開くための肝になる点です。 myApp.Workbooks.Open "開く対象のファイルのフルパス" '
995デフォルトの名無しさん (ワッチョイ d22d-drUO)
2020/03/16(月) 23:12:55.50ID:cMwINrzG0 コピーした行を挿入したいのにpasteやらDestination:=Rowsやらinsertやら試してもダメだったけどPasteSpecialしたら通った
よくわからん
よくわからん
996デフォルトの名無しさん (ワッチョイ 4d7c-9blg)
2020/03/16(月) 23:46:26.48ID:ZHCf4FTc0 pasteやらDestinationじゃそりゃ出来んだろう
997デフォルトの名無しさん (オッペケ Sr91-lt+r)
2020/03/17(火) 07:10:46.51ID:fnLz6KMUr >>986
よくわからなかった
よくわからなかった
998デフォルトの名無しさん (ワントンキン MMd2-drUO)
2020/03/17(火) 09:07:31.12ID:KpY/Lzz/M999デフォルトの名無しさん (ワッチョイ 09e6-oTi3)
2020/03/17(火) 13:21:49.91ID:4wOPps0G0 Excel×Python最速仕事術
マクロはもう古い!
マクロはもう古い!
1000デフォルトの名無しさん (ワッチョイ 02a5-5LgE)
2020/03/17(火) 13:36:34.30ID:ybHHyXnP0 excelはエディタがどうにかならんのか?
10011001
Over 1000Thread このスレッドは1000を超えました。
新しいスレッドを立ててください。
life time: 105日 13時間 52分 40秒
新しいスレッドを立ててください。
life time: 105日 13時間 52分 40秒
10021002
Over 1000Thread 5ちゃんねるの運営はプレミアム会員の皆さまに支えられています。
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
運営にご協力お願いいたします。
───────────────────
《プレミアム会員の主な特典》
★ 5ちゃんねる専用ブラウザからの広告除去
★ 5ちゃんねるの過去ログを取得
★ 書き込み規制の緩和
───────────────────
会員登録には個人情報は一切必要ありません。
月300円から匿名でご購入いただけます。
▼ プレミアム会員登録はこちら ▼
https://premium.5ch.net/
▼ 浪人ログインはこちら ▼
https://login.5ch.net/login.php
レス数が1000を超えています。これ以上書き込みはできません。
ニュース
- 【ラジオ】永野芽郁、田中圭との不倫疑惑後初の『ANNX』で謝罪「誤解を招くような行動…反省」「本当にごめんなさい」★7 [Ailuropoda melanoleuca★]
- 【神奈川】キャバクラ従業員の中国人女性(45)を蹴り負傷させた疑い 自民党所属の76歳横浜市議を逮捕 [ぐれ★]
- 「自分達は産む機械かと」「地方は非常に生きづらい」…指摘に赤沢大臣「大変申し訳ない状況」 [煮卵★]
- 米、車関税に負担軽減措置 国産車を優遇、報道 [蚤の市★]
- 【教育】「紙は感覚刺激し記憶定着」「スウェーデンでは見直しも」…教育団体、デジタル教科書に慎重意見 [ぐれ★]
- フィフィ、万博英国館のアフタヌーンティーに苦言「紙コップにティーバッグ」「五千円出してあの内容は残念すぎる」 [ネギうどん★]
- 【実況】博衣こよりのえちえちロックマンX4🧪
- __品川にある東京入国管理センター行きのバス停近くでナチス腕章を着けた日本人男性が目撃される [827565401]
- 🏡が無い😭
- 【お笑い】枯れ木を大量に立てた例の万博「文明の森」、倒木の恐れありとして敢えなく立入禁止に😂 [359965264]
- 牛丼はつゆ抜きが1番美味い
- 【特報】中居正広、まさかの反論を公表か [663382246]