Excel VBA 質問スレ Part64

■ このスレッドは過去ログ倉庫に格納されています
2019/12/02(月) 23:43:54.18ID:ngrqyTy20
!extend:checked:vvvvv:1000:512

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

※前スレ
Excel VBA 質問スレ Part63
https://mevius.5ch.net/test/read.cgi/tech/1568630099/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured
2020/01/18(土) 23:24:48.43ID:jJ2WRqDf0
気持ち悪いよねVBSスレ
死んでくれないかな誰とは言わないけど
2020/01/18(土) 23:29:07.74ID:qFsoK61Ea
>>332
エスケープでキャンセルするは?
338313 (ワッチョイ a9cc-0hUg)
垢版 |
2020/01/18(土) 23:44:31.92ID:GU2jl3IU0
>>333
そんなのちゃんとやってますわ。
Excel2016 までは普通に動いてたんですよ。

>>337
なにやってもダメ。タスクマネジャーから強制終了するしかない。


てか今日はなぜか再現しなくなった。
Excelって何かアップデート入った?それともWindows10起因かな?
2020/01/19(日) 00:23:37.04ID:qcodQ+dh0
普通、PowerShell, VBScript などで、
Excel, IE などを起動すると、プロセスが残る

プロセスを終了させるには、名前で調べて、終了させないといけないから、
名前が一致すれば、無関係のプロセスも、終了させられてしまうw
2020/01/19(日) 00:27:32.31ID:qcodQ+dh0
>>334
VBS のスレ主のピッコロ大魔王は、すごい使い手だよ。
VBSで、5ch をスクレイピングしたりもするし

ただ、荒らしに粘着されてる。
コテハンは目立つから、どうしても粘着される
2020/01/19(日) 00:31:47.67ID:/KlymybO0
>VBSで、5ch をスクレイピングしたりもする
スキルとしては下の下なんだが
2020/01/19(日) 01:08:44.67ID:jaXQhxpp0
あなたのハゲにサクセスしたい
2020/01/19(日) 01:12:37.02ID:i5FWYGKN0
でもまともなエディタないのにスクレイピングできるってちょっとすごいと思うわ
2020/01/19(日) 01:28:51.78ID:/KlymybO0
>>343
そう言われてみると確かに凄い!
2020/01/19(日) 14:51:45.20ID:SjdpeY/L0
>>335
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辞めたら?
あんたの会社セキュリティ意識なさ過ぎじゃない
大丈夫なの?表の仕事はしてない会社なのか
2020/01/19(日) 15:59:41.27ID:GJyhHQJKM
VBAを捨てられない組織がIEを捨てられるわけがないだろう
2020/01/19(日) 16:26:59.69ID:Z4m11qD6M
>>345
ADODB.? てのは無いんだっけ…
2020/01/19(日) 18:16:17.91ID:ABvwSa+Qa
上司が無能
2020/01/19(日) 20:13:14.65ID:ex79Jb14d
IE?
何の話?

>>335はADOの話だし、>>340のスクレイピングはIEとは言ってないよな。

それともスクレイピングはIEでしか出来ないレベルの人?
2020/01/19(日) 20:55:51.63ID:SjdpeY/L0
>>348
何それ?
どうしてもダメなら、最悪MSQuery使うつもりだけど、
シート名の指定が変な特殊文字で面倒臭いんだよな。
352デフォルトの名無しさん (スプッッ Sd82-sV0n)
垢版 |
2020/01/19(日) 20:56:52.40ID:aNwanbWxd
ActiveX
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
2020/01/19(日) 23:04:08.22ID:PQm/OLWJ0
>>353
For i = 1 To 6
  a = Cells(i, 1)
  Put #1, , a
Next
2020/01/19(日) 23:34:15.88ID:nXr7UDmZ0
ありがとうございます! やっと一歩進めました

ただ最終的に、ある行の1〜数万行のデータをその数値のままバイナリデータに変換したいので
現在だと 17 なんかは 11 00 のように入力されてしまうことと
セルの Cells(i, 1) 数値の方を変更すると型の不一致と出てくることは何が原因でしょうか
 小さすぎるかと思って As Byte を As Long にしてもダメでした
2020/01/19(日) 23:40:29.46ID:RvM5FchK0
型の範囲よく判ってないならちゃんと調べた方がいいよ
2020/01/19(日) 23:55:33.87ID:jaXQhxpp0
あなたのハゲにサクセスしたい
2020/01/20(月) 00:40:12.58ID:V4ZsTE2o0
型の範囲……調べてもそう難しくなさそうなのに何故か不一致の時は不一致に
ただ、いろいろ試していたら行の指定や範囲の指定はなんとかなったんですが、
やっぱり数値が16進に置き換わってしまいます
Dim a As Byte をStringとかに変えると まあ文字列になってしまうし
2020/01/20(月) 01:56:26.20ID:fAyYAtJL0
>>358
セルに入ってる数字は最大いくつ(何バイト分)なの?
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
2020/01/20(月) 08:18:58.19ID:V4ZsTE2o0
お手間をかけます

セルの値は00〜FFの範囲で セルの見た目そのままをバイナリに落とし込むことを目的としています

例えば書いていただいた >>360 では
セルの値が 01 だと書き出したほうは 01 00 となるので 
後ろの 00 は省いて書き込みたいと考えています
2020/01/20(月) 11:15:52.64ID:fAyYAtJL0
>>361
それなら最初の宣言を
Dim a As Byte
に戻すだけ
2020/01/20(月) 12:30:47.41ID:V4ZsTE2o0
ああ、出来ました!
i の範囲もLongにしたら数十万も対応できたので思っていたのが完成しました

長々と丁寧にお付き合いいただき、ありがとうございます!
2020/01/21(火) 16:05:59.09ID:v6wThH4Xa
>>363
エクセルの最後までいくとえらーでるんじゃね
2020/01/21(火) 18:50:01.59ID:oJaN0VWt0
実行するとめっちゃ重くなり、一度エラーがありましたが、
その時以外は、成功しています
2020/01/21(火) 18:53:25.76ID:G9onwGKx0
話しは変わりますが、”Microsoft Office Desktop Apps” と表示されてる方がデスクトップ版じゃなくてストアアプリ版だって本当ですか?
367デフォルトの名無しさん (ブーイモ MM6b-FqHH)
垢版 |
2020/01/22(水) 18:27:54.50ID:qTZNd94bM
一つのシート上の複数セルに関数が設定されています。

すべてのセルの関数の処理が一つ一つ処理されていき、最終的にすべてのセルの更新処理が終わったときに、あるマクロを動かしたいのですが、どうやればいいのでしょうか?
2020/01/22(水) 18:51:55.87ID:dkHhF3U80
もはやExcel大喜利だな。
2020/01/22(水) 19:00:23.17ID:BHh+OjnL0
ここには北海道のスーパーハゲザーはこないのー?
2020/01/22(水) 19:20:56.10ID:0xXxIRDp0
>>367
セルの関数を指定のタイミングと順番で処理したいってこと?
関数の入ったシートのEnableCalculationプロパティをFalseにして、
計算したい関数の入ったRangeのCalculateメソッドを順次呼べば一個ずつ処理できる
それで最後の関数の計算が済んだ後にマクロを実行するとか

一応関数の計算終了時に動かすマクロはシートのCalculateイベントに書いても実行できるけど、
シート全体が対象だからCalculateメソッドが走るたびに発火するから使えないと思う
371デフォルトの名無しさん (ワッチョイ a761-FqHH)
垢版 |
2020/01/22(水) 21:36:24.98ID:ASOe66pr0
>>370
ありがとう
試してみます

自分で作った関数を引数変えて500セルくらいが呼び出す状態なんです。
んで、かなり遅くて、全部が終わるまで5分位待つことになるので、それではつかいものにならないので、高速化を図りたいのです。
2020/01/22(水) 21:45:06.72ID:NTh6ute5a
そろそろ python とか考えた方がいいデータ量だな
2020/01/22(水) 22:07:39.73ID:u4WICNHad
>>371
そういうのは、いちいちワークシートとか数式を使わずに、全部配列で処理すれば5秒で終わるよ
2020/01/22(水) 23:41:11.62ID:dkHhF3U80
そう思っていた時代がありました。
セルに数式とかダセェぜ、これからはSQL
2020/01/22(水) 23:42:00.02ID:dkHhF3U80
だ、とか思って、DSUMのあまりの遅さに撃沈。
2020/01/23(木) 04:03:57.39ID:7AuSNAnix
500セルに対するETL処理だからPowerQueryでインメモリ処理すれば良いのでは
2020/01/23(木) 12:47:14.66ID:TvBTmyI8d
>>375
DSUMなんて使うからだろw
というか、Dの付く奴は手軽だけど使わないのが基本じゃ無いの?
2020/01/23(木) 12:48:15.57ID:TvBTmyI8d
というか、普通は>>373だろ。
379デフォルトの名無しさん (ワッチョイ e78a-yq/U)
垢版 |
2020/01/23(木) 23:18:33.64ID:020LoGP80
dsumよりサブクエリの方が速いのが納得いかん。
あんな遅いの、何であるんだ?
俺の使い方が下手なだけで、速く使える人もいるのか?
2020/01/24(金) 07:02:09.49ID:3ouAvGwr0
>>379
db関数はAccessから持ってきただけのなんちゃって関数だと思っている
実装後にブラッシュアップでも考えていたのかもしれないが、今となってはもう・・・
2020/01/24(金) 10:44:07.60ID:H2KGzjxR0
あなたのハゲにサクセスしたい
2020/01/25(土) 05:46:11.97ID:q4rx//wXa
新聞配達しながらプログラミングのこと考えてたんだが
オブジェクト指向こそプログラミング的発想の1丁目1番地で
オブジェクト指向が解らないやつは3流のクズってことで結論出ました。
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
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
386デフォルトの名無しさん (ワッチョイ 8701-1Wqm)
垢版 |
2020/01/26(日) 10:48:01.26ID:ygprKbmU0
for i = のところね、なんで?
2020/01/26(日) 11:12:02.47ID:byZzTIzc0
>>384
もうちょっとテストしやすい形にしてくれ

>>384 最期から三行目ぐらいでエラー。原因は多分ファイルの構成かなんかだろう
>>385 エラーにならない

エラーになるファイルか、スクリーンショットでも貼ってくれ
2020/01/26(日) 11:21:15.83ID:vsWc/GLT0
>>386
たぶんこうじゃないかな
For i = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
389デフォルトの名無しさん (ワッチョイ 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 について調べてみたの
ですが、プロシージャの呼び出しについての説明しか見つけられず
困っています。
どうぞよろしくお願いいたします。

 
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)
391デフォルトの名無しさん (スッップ Sd7f-APVk)
垢版 |
2020/01/26(日) 12:37:50.96ID:fwxC7BLNd
エクセル以外はインストール出来ないって特殊会社にこき使われてる社畜は無視してその他の人はVBAなんて覚える価値は全くないから騙されるなよ
エクセルデータを読み込んで加工するなんて簡単な事
2020/01/26(日) 12:49:58.68ID:QZpkq/o4x
場合によりけりだろう
Excelの読み込みができる言語ならエクセルデータの加工が可能なのは事実だが、VBAが手軽なのは間違いない
今やPower Queryの操作もVBAで行えるから、VBAを呼び出し元にして複雑なデータ加工を高速で行うことも可能になってる
2020/01/26(日) 13:53:16.01ID:Hz+a2g+VM
>>389
call つかうと引数の括弧が必須になるんだよ
使わないときは括弧つけるとエラー
そんで変数=関数(引数) みたいに返り値を取る場合も括弧が必須になる
つまりcall 使うと括弧有無の記述を統一できるんだね
2020/01/26(日) 15:15:52.15ID:trXW8RYwM
VBAでのPower Query操作ってクソだよね
letからinまでのステップ全体がFormulaプロパティに長い文字列として収まってるだけ
vbaの貧弱な文字列操作で弄りたくない
2020/01/26(日) 15:46:06.33ID:wbtCtzSUd
>>391
>>392
まず、基本的に対象が違う。
Excel以外はExcelブックとの連携であり、Excelファイル操作が主題。

ExcelではExcelを開いた状態で、Excel上での作業を効率化するもの。
従って基本的に競合しない。

何故、Excelファイルが使われるかと言えば、Excel上で何らかの作業をする為であり、その作業が仕事に大きな意味を持つから。
その大きな意味によってExcelというアプリケーションが使用されている以上、VBAの優位性は動かない。
396デフォルトの名無しさん (スプッッ Sd7f-APVk)
垢版 |
2020/01/26(日) 15:49:42.04ID:QaUqszajd
データの共有や統合が出来ないのがエクセルの欠点
2020/01/26(日) 17:01:12.87ID:DD0zspUIa
できるけど、もう使わないだろう
2020/01/26(日) 18:03:51.13ID:H61ob1qx0
あなたのハゲにサクセスしたい
399デフォルトの名無しさん (ワッチョイ 47ad-FkkX)
垢版 |
2020/01/26(日) 19:14:52.64ID:JYk4qqrF0
>>390
>>393
わかりやすいご説明ありがとうございました。
もっと勉強して、みなさんの会話に混ざれるように
なりたいです。
職場でExcelのひな形をコピーして、顧客リストの顧客コードを
シートの指定のセルに書き込み、Book名にも付加して、名前を付けて
保存、というのを2000個くらい毎年度初めに作るのが若手のお仕事よ!
と仰せつかり、歴代の先輩方は手分けして「手作業で」やっていたと聞き、
「いやいやいや、何時代よ!」と勉強を始めました。
2020/01/26(日) 19:24:52.26ID:trMje/ic0
>>399
ここ煽りやアンチばっかだからもっとマシな場所に混ざりに行ったほうがいいよ
2020/01/26(日) 22:14:31.23ID:9RxiX0DDx
>>394
長くなるかどうかは書き方次第だろう
Let In構文はMの文法上必須ではないので、変数を極力使わずLispのような記法で短くまとめても良い
402デフォルトの名無しさん (ワッチョイ a78e-U9mn)
垢版 |
2020/01/27(月) 00:51:05.27ID:X7pesRTh0
>>399
馬鹿しかいない職場か?
2020/01/27(月) 08:07:38.79ID:l0N1pZ88d
>>399
コーディング含めて1時間あれば出来そう

けど便利屋になるのだけは避けた方がいいぞ。
今後そういう処理は全部お願いってなって、雑用みたいな仕事ばっかり来るはめになる。
プログラマーは評価されにくく、いいように使われやすいから。

コードをしっかり管理して、そうならないようにな!
2020/01/27(月) 08:22:04.82ID:UsiT3d7U0
アホな職場上司もとい老害同僚からは
仕事減るから余計な事するな
と言われる可能性も
2020/01/27(月) 12:05:43.13ID:+n+DvrX6a
出る杭は
2020/01/27(月) 12:31:00.54ID:vcCI8B5w0
まじでそういう馬鹿上司いそうで困るな
しかも外のセミナーで自動化で人件費コストカットとか吹き込まれたら躊躇なくクビ切ってきそう
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

こんな感じのコードを書いているのですが、配置したボタンの名前をワークシート上で
参照/変更することが出来ません
仕方ないので、一旦全てのシェイプが消えたあと再度ボタンを配置して、上記プログラムの
コメント部分を切り替えています

プロパティを見ても、オブジェクトとしてワークシートが選択されてしまうようで、ボタンを
選択した状態でプロパティを見てもボタンの情報が参照できません
2020/01/27(月) 19:50:12.48ID:0hVuFT9Z0
>>407
shapesは図形
コントロールはフォームコントロールかActiveXコントロールで扱い方違う
2020/01/27(月) 20:35:24.91ID:2ZMm50820
>>408
あ、すいません
プログラム上ではなくて、excelの画面上でボタンの名前を確認、変更したいのです
ちなみにボタンは「開発」タブの「コントロール」で「挿入」から選べるものを使ってます
2020/01/27(月) 20:37:54.19ID:KoUrFee7x
>>409
だから、フォームコントロールとActiveXコントロールのどっちなの
2020/01/27(月) 21:01:21.61ID:2ZMm50820
>>410
失礼、フォームコントロールでした
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属性を持っているかどうかを判定させたら良い
2020/01/28(火) 09:01:31.91ID:Ft5XlNEA0
>>411
ホームタブ右端の検索と選択→オブジェクトの選択と表示
からシート内オブジェクトリスト出てくるけどこれが名前だったかな
2020/01/28(火) 09:48:07.01ID:9/9sPnJua
終わりの鐘は鳴り響いた
https://ascii.jp/elem/000/004/000/4000725/
2020/01/28(火) 10:02:58.52ID:Nfh+nWpkM
あとは新しいVBAウィルスが出てセキュリティ業者が騒いだらVBAは本当に終わりだな
2020/01/28(火) 10:46:16.03ID:ih37tboE0
>>414
それ前にも貼られたけど、今までのとの違いが分からんのだが
2020/01/28(火) 15:16:34.29ID:oKycYjGsM
>>414
VBAでもできる範疇なら全く覚える気起こらん
2020/01/28(火) 17:56:01.82ID:WltGdJqx0
覚えてないことはできるかどうかも判断できない
2020/01/28(火) 18:12:38.87ID:OkfjSvr+0
>>412
本来はこれがやりたかった、shapeのプロパティをちゃんと調べていなかったので
出来なかった処理でした
他にも似たような処理があるので、コード使わせていただきます

>>413
私の質問に対する回答は、これが求めていたものでした
開発タブしか見ていなかったんですが、ホームタブでいけたんですね

お二人共ありがとうございました
2020/01/28(火) 18:28:16.91ID:jS595giQM
>>417
そうか?
俺はVBAの代わりにTypeScript使えるなら乗換えるよ
2020/01/29(水) 10:51:07.25ID:QiJT1T/Bd
>>420
どの程度使えるかだな。
全く同じことができるなら乗り換えるだろうな。
2020/01/29(水) 20:53:08.43ID:WcpQW9dq0
まったく同じことしかできないなら乗り換える要素がない
2020/01/29(水) 21:53:26.65ID:QiJT1T/Bd
全く同じことができるなら、新規に憶えるだけじゃん。
それはこっちの労力だけで済む。
今後移行していくとすればその程度大した問題じゃない。

今まで他言語では出来なかったり、不便だったからVBAを使っていたわけでね。
2020/01/29(水) 22:24:20.41ID:PCXIkBj+0
>>422
同じことが楽にできるなら乗り換える理由になるでしょ?
2020/01/29(水) 23:05:27.98ID:vXudwKK20
今までと同じことをするだけなら、今までに書いたコードをそのまま使い回すのが一番楽だよな
わざわざ書き直す手間はだれが負担するんだ
2020/01/29(水) 23:12:48.36ID:KmqvK0eda
>>425
いうてVBAなんて実質的には大したことやってないのが大半だろ
資産価値なんかゼロだよゼロ
コーダーの能力が低すぎて驚くほど冗長なコードになってるのは多いけど
2020/01/29(水) 23:27:08.67ID:/IekKsgr0
sheet("sheet1").select!
さよか〜

個人的にはjQueryが一番嬉しい
あれ、記述が超絶楽ちんなんだよ。cssセレクタとかExcel vbaと感覚的にかなり似てる部分があると思う
$("sheets!").cell(1,2).backgroundcolor("red")
とかね
と書きながら思ったけどこれ別に言語買える必要ないな

googleのapps scriptは冗長でかなりめんどくさい 
強制的にアドイン扱いだしタイプが長い
2020/01/30(木) 01:32:32.11ID:OC7VpsKDd
>>425
書き直す必要は無いでしょ。
これからの話。
2020/01/30(木) 01:33:34.48ID:OC7VpsKDd
>>426
君のコードは大したことやってないの間違いじゃね?
2020/01/30(木) 08:06:07.77ID:c+cMZ6b7a
ぶったけインテリセンス次第なんだよなぁ
javascriptでインテリセンスが優秀なら移らない理由ないし
インテリセンスが不自由ならVBAやめないし
2020/01/30(木) 08:13:50.21ID:wtwPJonTM
>>429
VBAに大したことやらせなきゃいけないなら設計ミスだよ
2020/01/30(木) 18:17:30.68ID:Pn/eUKFJM
VBAで大したことやっちゃいかんでしょ
2020/01/30(木) 18:33:44.35ID:dbuen9v3a
自分の仕事の範囲で統計解析とかやるけどな
2020/01/30(木) 18:53:21.09ID:wB7TmKf3M
それがPythonだったら同じことやってても倍の年収貰えるのにもったいない
2020/01/31(金) 00:09:52.88ID:vDcmNEzT0
jQueryももう大分レガシー扱いだぞ
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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