[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/16 07:47 / Filesize : 287 KB / Number-of Response : 1010
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Excel VBA 質問スレ Part74



1 名前:デフォルトの名無しさん mailto:sage [2021/12/20(月) 01:40:59.22 ID:jnlr9GaR0.net]
!extend:checked:vvvvv:1000:512
!extend:checked:vvvvv:1000:512
↑同じ内容を2行貼り付けるナリ

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

※前スレ
Excel VBA 質問スレ Part73
https://mevius.5ch.net/test/read.cgi/tech/1631485799/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:: EXT was configured

762 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 09:54:07.85 ID:OyQV2dPc0.net]
>751
覚える事が信じられないぐらい少なく、誰でも使えるから
変数とif、for辺り知ってればほとんどの場合に対応できる
若干とっつきにくいのがset程度
更に相当テキトーに書いても他へ影響し辛い

どれも実務上は長所だけど、
他の言語を知ってると「なにこれ?」ってなるのはわかる。なんというかおもちゃっぽい

763 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 10:17:37.26 ID:M8ea68f50.net]
>>745
自分の環境だと、普通のフィルタをかけた状態ならそれで拾えるけど、フィルタのソートを行った状態は拾えないので、やりたくないけどどうしてもやるなら列のデータをなめるしかないのかなと

>>751
元々、Visual Basic自体がBASICという、学校でプログラミングの導入として教えるような簡易なプログラミング言語から派生したものだから、他の言語より低く見られていた
更にそこから派生したVBA(マクロ)やVBS(スクリプト)なんかはより低く見られている
まぁ実際に、図体の重たいプログラムでは手が届きにくい部分を補完する孫の手的な使い方をするのが主流なので、穴埋めや間に合わせ的な位置付けに見られているからだと思う

764 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 11:04:25.26 ID:1pI7yMTXM.net]
>>758
ソートは一時的な状態じゃないから完全に拾えるわけじゃないけど
ListObjects(...).AutoFilter.Filters(...).Sort
見たらわかるんじゃないの?

765 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 11:05:21.11 ID:bDLL2+/00.net]
>>751
差別しているのは Ruby厨だから無視していいんじゃね
そもそも言語に上下なんかないし

766 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 11:13:37.04 ID:M50L9SrL0.net]
>>757
> 他の言語を知ってると「なにこれ?」ってなるのはわかる。なんというかおもちゃっぽい

なんとなく納得できる表現だな。
C・C++・C#・JAVA・Rustとかの、かちっとしたのが当然だと思ってると面食らう。

特に Variant。まあ、最近はコンパイラ系に逆輸入されてるけど。

767 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 11:15:31.30 ID:M50L9SrL0.net]
あ。馬鹿にしてるわけではないよ。便利だと思う。

ただ、コンストラクタ引数と継承は入れてほしかった。

768 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 11:28:56.70 ID:tQGwfe1Lr.net]
VBAが言語として下に見られてるのかは知らんが書いてるやつの水準は他言語より圧倒的に下だよ
変数の型指定しない、withつかわない、まとめられる処理をまとめずにコピペし大量のモジュールを作る、配列とか使わないでセルを一回一回読み書き
こんなコードが会社のエクセルにはたくさんある
そしてそれが神マクロと崇め奉られてるのホントゴミ

769 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 11:44:30.01 ID:PUyOyrFtM.net]
>>761
> 特に Variant。まあ、最近はコンパイラ系に逆輸入されてるけど。
void * とか昔からあるけど?

770 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 12:02:30.08 ID:ZRWUeJUN0.net]
結果がすべて
仕事を終わらせたやつが評価されるんであって、どんな方法を使ったか、きれいに書いたかどうかなんて普通は問われない



771 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 12:10:51.21 ID:L/C5gyxS0.net]
>>765
俺もそっちだわ
仕様として許容されているなら使う人が目的達成できればどうでもいいんよ
まぁリファクタリングしろと言われたら発狂するが

772 名前:デフォルトの名無しさん [2022/01/29(土) 12:12:26.42 ID:nI5CwbIZ0.net]
何かを見下したい、マウントを取りたいのは、
愚か者の本能であって、理由は後付け。

VBA がハイコストパフォーマンスで
ある程度のシステムを構築できてしまう
便利なツールであることには変わりない。

頭の悪い人間ほど、意味のない格付けをしたがる。

773 名前:デフォルトの名無しさん [2022/01/29(土) 12:22:38.03 ID:nI5CwbIZ0.net]
Windows環境で、
なんらかの要件を実現する方法の選定として
導入コストを考えたら、DOSバッチでも
PowerShellでも、JavaScriptでも、WSHでも
既存のリソースのみで実現できる方が良いに決まってる。

特に日本人の思考は、合理性を軽視して、見てくれや
くだらない感情で判断することが多いので、
開発のプロジェクトでも時間とカネのコスト管理ができてない
愚かな企業が多い。

774 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 12:23:55.26 ID:hiZAoffAM.net]
>>765
そういう書き捨ての仕事もあるし、連綿と続く仕事もある

775 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 12:27:08.84 ID:nI5CwbIZ0.net]
結果として、他国からバカにされてる
日本の生産性の低さに繋がっている

あらゆる分野で、開発スピードは、
圧倒的に米欧・中華が優っている

776 名前:デフォルトの名無しさん [2022/01/29(土) 12:29:20.03 ID:iTemfgLK0.net]
>>768
例の馬鹿か

777 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 12:34:16.18 ID:Q0NPbY74r.net]
>>765
書き捨てではなく日々の定型業務につかわれ
それらが前提になって業務フローが組まれてるから
保守が必要なんだよなあ…
なお制作者と仕様書、コメントはない

778 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 12:43:35.90 ID:28WRDRfRr.net]
まあ正直、要件定義〜設計までの上流工程の人間からすると
言語は何でも良いんだけどね。

こだわるのはコーディングフェーズ以下の下流エンジニアであって。

779 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 14:49:20.34 ID:u7cBLx/b0.net]
関数が得意な人はなんでも関数で片付ける、マクロが得意な人はなんでもマクロでやろうとする傾向があると田中氏が言っていたな講演会で。
バランス良く使える人こそ真のエキスパートだとも。

780 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 15:14:16.94 ID:YNpwCmNLM.net]
>>774
そうなんか
確かに関数使うのって電卓がわりにするか文字の置き換えくらいかも



781 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 15:41:11.14 ID:D/yb4xS+0.net]
指定した範囲にそれぞれ外枠線を引きたいのですが、量が多くなると時間がかかるのでUnionを使いたいのですが、

Dim rng As Range, i As Long

Set rng = Range("B2:B3")
Set rng = Union(rng, Range("C2:C3"))

For i = 4 To 50 Step 2
Set rng = Union(rng, Range("B" & i & ":B" & i + 1))
Set rng = Union(rng, Range("C" & i & ":C" & i + 1))
Next i

rng.BorderAround Weight:=xl

782 名前:Thin

だと、Range("B2:C51").BorderAround Weight:=xlThin と同じになってしまいます。
短い時間で、それぞれの範囲に外枠線を引く方法を教えてください
[]
[ここ壊れてます]

783 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 15:45:53.96 ID:W/oxWoyf0.net]
>>753
https://www.google.co.jp/search?q=vba+%E3%82%BD%E3%83%BC%E3%82%B9%E5%8F%96%E5%BE%97

784 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 15:52:44.84 ID:MAc7BERw0.net]
>>761
JavaでもObjectになんでも突っ込めるじゃん

785 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 16:14:17.19 ID:u7cBLx/b0.net]
マクロ書くより手作業でやった方が早いのにわざわざマクロでやる人ばかりとも言っていたな。
なるほどなと納得する講演会だったね。

786 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 16:34:34.13 ID:L/C5gyxS0.net]
今知ったんだけどFalseってフォルスって読むんだな
考えてみれば失敗じゃなくて偽りだもんな
本職じゃなくて良かったわ〜

787 名前:デフォルトの名無しさん [2022/01/29(土) 16:35:06.88 ID:RDGmPxZCr.net]
なんで Cells を使わず、わざわざ
Range を使うのが多数派なんだろ。
メリットないじゃん。意味わからん。

788 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 16:40:41.52 ID:D0pOsND50.net]
>>774
田中さんそんなこと言ってたのか
俺ならバランスより効率重視だな
数式にマクロの関数仕込むこともあるし
その逆もある。

789 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 16:41:42.31 ID:fC9nxr54M.net]
だってマクロ書きたいんだもん

790 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 16:49:23.58 ID:wL4gsmFrd.net]
>>781
a1とかa1:f5とかを暗黙定義された名前と考えて
名前で指定するイメージ



791 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:04:38.36 ID:fQ9LbNHBM.net]
>>780
失敗は Fail だもんな

792 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:04:52.88 ID:L/C5gyxS0.net]
俺はcellsだよ、座標として捉えてるから数値との親和性が高く感じる

793 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:06:06.65 ID:L/C5gyxS0.net]
>>785
そやねん、フェイルセーフっていうからその延長で思い込んでしまってたみたい

794 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:06:09.58 ID:fQ9LbNHBM.net]
>>781
極端な例だけど Cells(100, 100) がどのセルを指してるのかすぐにわかるなら…

795 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:09:18.89 ID:L/C5gyxS0.net]
>>788
なるほど
でもSAの倍の座標がどこかが解りづらいんじゃない?

796 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:16:34.10 ID:OyQV2dPc0.net]
日本はA1形式なのでどっちにしても分かりづらい
歴史的経緯で今更どうしようもないとは言え、残念すぎる

797 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:29:33.23 ID:36YHaPQ9M.net]
>>789
倍の座標とかの計算結果で指定するならそりゃCells()で指定するよ
Dim c As Range
Set c = Range("SA100")
としてCells(2 * c.Row, 2 * c.Column)
>>781は例えば最初のセルの指定とかでアドレスが分かってる場合でしょ

798 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 17:59:18.61 ID:u7cBLx/b0.net]
>>782
うん。自分の耳が腐っていなければ確かにそれを強調していたように聞こえたよ。。
とにかく後任者の事を第一に考えようと。
あと、速度改善するマクロを書いても後任者が理解できなければそのマクロは結果遅いマクロとも。
一理あるなと思った。
かなり前の話だからうろ覚えごめんなさい。

799 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 18:07:28.04 ID:oYmiRtJxM.net]
何が正解かはケースバイケースだしね
LETとかLAMBDAのサポートで正解変わったりするし

800 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 18:58:08.38 ID:D0pOsND50.net]
CellsとRangeなんて一長一短なんだから
状況に合わせて使い易い方、分かり易い方を使えばいい。
どうせ両方とも型はRangeだ。



801 名前:デフォルトの名無しさん [2022/01/29(土) 19:05:46.63 ID:XZlmQtKVr.net]
例えば、数万行の処理をループで回す場合とか
Range と Cells とでは、処理速度が全然違うのよ。

実際にやってみればわかる。

802 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 19:07:36.86 ID:u7cBLx/b0.net]
Range(A & i)みたいなコードをたまに見るけど、あまり良い書き方ではないと聞きましたよ

803 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 19:10:29.95 ID:D0pOsND50.net]
>>796
そりゃ普通そんな書き方しないもの。
最初の位置から移動させて使う場合は
RangeならOffset使うでしょ。

804 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 19:13:25.82 ID:u7cBLx/b0.net]
いわゆる「マクロ入門書」とかにもそのような変な書き方がある。
教える側の立場にある人がそんな書き方してるのはちょっと

805 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 19:49:18.54 ID:lAJromTAM.net]
>>797
Offset(), Resize() はセル結合を「考慮してくれる」からイマイチ使い辛い

806 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 19:57:24.50 ID:W/oxWoyf0.net]
可読性と処理速度要件で変えるだけ

807 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 20:51:43.39 ID:OyQV2dPc0.net]
>>795
100万ループさせてやっと数秒か
この程度の差なら速度は誤差では?
速度抜きにしてもrange("a1")って書き方はせんけど

Sub foo()
GetLocalTimeTest
For i = 1 To 1000000
'5秒
'bar = Range(Cells(1, 1), Cells(1, 1))
'2.8秒
'bar = Cells(1, 1)
'6.7秒
'bar = Range("a1")
Next
GetLocalTimeTest
End Sub

808 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 20:55:44.71 ID:2z3KoE650.net]
setは?

809 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 21:16:18.07 ID:u7cBLx/b0.net]
ねーこれかなり凄くない?
https://rkb.jp/article/61225/
実務を経験していない女子高生がExcel世界一だって。

810 名前:デフォルトの名無しさん [2022/01/29(土) 21:18:02.94 ID:j5q7lOJ70.net]
>>790
いろは順が良かったってか?



811 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 21:19:19.33 ID:zfCLVkWb0.net]
学生大会ね

812 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 21:24:22.79 ID:1BTFtAsTM.net]
>>803
素直にすごいと思う
まあExcelに対する知識もさることながらプレゼン力やセンスも問われるから俺には全然無理

813 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 22:21:59.94 ID:tNIxMt6Qd.net]
>>803
マスゴミの手に掛かればExcelそっちのけで好きな食べ物は?とか好きな男性のタイプは?とかどうでも良い情報ばかり取り上げられるだけ
紹介動画でExcel触ってんの1分も無いじゃん

814 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 22:38:28.21 ID:FzjWUvLmd.net]
>>781
マクロの記録で自動生成されるとRangeが使われるからじゃない
自分もCells派だけどいろんなツールで使ってる共通的な関数群はRangeの方が作りやすいからRangeも使ってる

815 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 22:41:28.05 ID:ZRWUeJUN0.net]
ループ回すにはCellsのが書きやすい

816 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 22:44:29.32 ID:yRT1rOmgM.net]
>>808
> いろんなツールで使ってる共通的な関数群はRangeの方が作りやすいからRangeも使ってる
???
どっちを使っても型はRangeだよ…

817 名前:デフォルトの名無しさん mailto:sage [2022/01/29(土) 23:35:26.26 ID:FzjWUvLmd.net]
書き方が良くなかったね
自分が作ってる関数だと引数の使い方がRangeの方が汎用性が高い

818 名前:デフォルトの名無しさん [2022/01/29(土) 23:51:38.36 ID:j5q7lOJ70.net]
引数は文字列と言うことかな?

819 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 01:33:47.10 ID:RkuzR5nc0.net]
作成依頼もOKということで書き込みさせていたただきます。
現在開いているシートの名前で、特定の場所にCSV(コンマ区切り)の形式で保存したいです。
また、エクセルを開きっぱなしで別のプログラムにCSVを読み込ませ、その後データを書き換えてCSVを上書き出力、読み込ませ、データを書き換え…、の繰り返しをしたいのですが、エクセルを開いていると別のプログラムで読み込んだ時にエラーが出てしまうため、別のブックとして保存して閉じることができると嬉しいです。
VBAについての知識がほとんどないため、こういった情報で作成依頼していいものなのかわかりませんが、よろしくお願いします。

820 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 02:59:23.74 ID:MQJLXGaO0.net]
>>813
Sub save_sheet_as_csv()
  Dim this As Worksheet: Set this = ActiveSheet
  Dim sheet_name As String: sheet_name = this.Name 'ワークシート名取得
  Dim save_folder As String: save_folder = "c:\tmp\" '保存先フォルダ指定
  Dim save_fullpath As String: save_fullpath = save_folder & sheet_name & ".csv"

  this.SaveAs Filename:=save_fullpath, FileFormat:=xlCSV 'CSVで保存
End Sub



821 名前:デフォルトの名無しさん [2022/01/30(日) 03:34:13.23 ID:RkuzR5nc0.net]
>>814
ありがとうございます、試してみたところ、出力したCSVを別のプログラムで読み込もうとしたときに「別のプロセスで使用中のため開けません」とのエラーが出てしまいました。
私の使い方が悪いのかもしれませんが、アドバイスいただけるとありがたいです。

822 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 03:54:54.88 ID:MQJLXGaO0.net]
>>815
ブックを閉じるには、これを最後に入れる
Workbook.Close

823 名前:デフォルトの名無しさん [2022/01/30(日) 04:02:16.39 ID:RkuzR5nc0.net]
>>816
ありがとうございます、うまくできませんでした…。
ネットで拾ったものですが、これがやりたいことに近いかなと思うんですが、保存先の指定はどうすればいいでしょうか。

Application.DisplayAlerts = False 'Excelの警告を一時無視

ActiveSheet.Copy '新しいブックへコピー

ActiveWorkbook.SaveAs Filename:="book1.csv", FileFormat:=xlCSV, Local:=True 'CSVで保存。ファイル名は「book1.csv」。

Workbooks("book1.csv").Close 'book1.csvを閉じる

Application.DisplayAlerts = True

824 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 04:58:34.47 ID:MQJLXGaO0.net]
>>817
じゃあこっちを使ってみて
CSVで保存の次に以下の1行を追加
Application.Quit

いきなりExcelが終了するので、直したら保存を忘れずに

825 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 07:43:58.44 ID:q4Ohgw6D0.net]
>>759
うちの環境だと、FilterオブジェクトにSortはないね
その代わり、ListObject.AutoFilter.Sort.SortFields.Countで検出できそうなのは見つけた
もしかしてこのへんバージョン毎に違ったりするのだろうか?

826 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 09:05:00.91 ID:4Di3AbRzM.net]
>>819
すまん今見たらそっちが正しいわ
なんか勘違いしてた

827 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 09:32:32.30 ID:XZOTMr4+0.net]
>>807
確かにw
取材側の都合の良いように組まれているね。
言われてみればグラフの装飾だけでExcelを操作していないわ。

828 名前:デフォルトの名無しさん [2022/01/30(日) 09:32:37.50 ID:RkuzR5nc0.net]
>>818
私の伝え方が悪かったです。
Excel自体は終了せずに、現在使用しているブックとは別のブックとしてcsvを出力して、そちらを閉じたいのです。

829 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 09:54:20.39 ID:XZOTMr4+0.net]
そもそも学生大会があるってのは知らなかった
騒がしてごめんなさい😢⤵⤵

830 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 11:04:58.48 ID:q4Ohgw6D0.net]
>>820
いやいや、むしろ知らない方法を見つけられたのでありがたかったです



831 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 12:45:39.26 ID:mFQLQi3M0.net]
VBAももう終わりそうだな
MSはWEB版にしたいみたいだし

832 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 12:58:15.03 ID:+kmkPMy10.net]
不滅です

833 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 13:00:10.17 ID:gD+f1kBW0.net]
終わる要素一切なくて草

834 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 13:13:55.29 ID:wiJ8ix3a0.net]
MSがGoogleに頭下げてGASで統一しましょうみたいな交渉を持ち掛けない限りはないだろ

835 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 13:18:12.09 ID:XZOTMr4+0.net]
確か4.0マクロ廃止とパワークエリはマクロ作業を減らすためにMSが作ったんじゃないのかい?

836 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 18:00:19.55 ID:k8uzKlEP0.net]
>>825
気が早いな
まだ学校や企業のライセンスでしか
Web版Excelのjavascriptでの開発は出来ないと言うのに

837 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 18:51:59.67 ID:gD+f1kBW0.net]
パワーピボットは本当にスゴイ
なんでもっと早く実装しなかったんだ・・・

838 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 19:06:51.96 ID:DR73eQYX0.net]
ようつべにこんなのあった。

Excelオンラインで最新Excel関数を練習したいという方も必見です!どこまでできるか試してみた!
https://youtu.be/saC7BegnViI

Power Queryは使えないけど
テーブル、スライサー、ピボットテーブルは使える模様。

ただ、スマホの小さな狭い画面だとムリだろな・・・

839 名前:デフォルトの名無しさん [2022/01/30(日) 19:55:45.81 ID:gNdtnnB7r.net]
なんで、Access使わないの?
SQL 使えないと不便じゃん。

840 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 19:57:56.80 ID:PMeev6woM.net]
powerqueryで十分だから
excelだけで完結する



841 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 20:17:09.09 ID:XZOTMr4+0.net]
Excelオンラインって一部の上級者が食いつき始めていると聞きましたわ

842 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 21:04:21.08 ID:k8uzKlEP0.net]
>>833
何故にEXCELでSQLが使えないと思ったのかは聞かないけど
まだSQL初心者でクエリ画面開いてチマチマとテーブル繋いで設定していく
あのACCESSのが使えないかと言われればそれはそう。

でも複雑なSQLを組むようになると結局手で書いた方が早くなるからアレもあまり必要性を感じないけどね。

結局、ADOさえ理解していればACCESSだろうがORACLEだろうがSQLSERVERだろうがその気になれば
EXCELのシートだろうがCSVファイルだろうがEXCEL上からSQLを実施することが出来る。

ただ、本来DBの用途からかけ離れるほど使用に制限を受けるよ。
例えばEXCELのシートやCSVファイルはDELETE文が使えなかったりとか。

843 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 21:18:16.55 ID:k8uzKlEP0.net]
>>835
さっきもちょっと書いたけど
まだ商用か教育機関用のライセンスじゃないと
Javascriptで開発すること出来ないんだよね。

だからJavascriptやってない人は
まだ猶予期間がある内に
Javascript触って慣れておくといいよ。
特にスカラー変数とかまるで
全ての変数はVariant型で扱うかの
ようになったり、
Jqueryとかが出てくると
メソッドを変数に入れたり
チェーンメソッドみたいなのも出て来たり

その前にHTMLやCSSも勉強しなきゃだけど。

844 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 21:24:55.59 ID:gD+f1kBW0.net]
ちゃんとしたデータが揃ってるって前提なら、DELETEなんて使う事はそんなになくないか?

>>837
エクセルでjQuery使えるの?

845 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 21:36:30.54 ID:k8uzKlEP0.net]
>>838
DELETE使う必要があるかと聞かれれば、
まぁ有った方が便利かも知れないね、という程度。
何せEXCELのシートで条件に合った行が一発で消せるのであればまぁ便利だろう。ただ、
VBAでそういうロジック組めば代用出来ない訳じゃない。

Jqueryが使えるかどうかは俺もまだ
Web版EXCELの開発環境触ったことないから分からんけど、
どっちにしてもJavascriptをやるならついでに覚えて置いた方がいい。とっても便利。

846 名前:デフォルトの名無しさん [2022/01/30(日) 22:15:29.30 ID:sjTHXMe20.net]
ID:k8uzKlEP0

またいつもの馬鹿が嘘ばっか書いてる

847 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 23:07:47.49 ID:k8uzKlEP0.net]
例えばだけど
VBAを生業としているとその内DBとのやり取りを行うようになってSQLは必須になることは理解している人はここにも沢山いると思う。

同様にWeb系を行うならHTMLやCSS、Javascriptの知識が必須になるんだよ。
もしEXCELがWeb主体で扱われるようになるのであればその知識が必要ってだけ。

まぁ確かにスレ違いではあるから
ぼちぼちおいとまするよ。

848 名前:デフォルトの名無しさん mailto:sage [2022/01/30(日) 23:34:30.41 ID:fPY/YlGjd.net]
Excelでやるには面倒なことでほかの言語知っててそっちの方が簡単ならわざわざExcelなんて使わないでしょう
開発者ならそれぐらいわかりそうなもんだと思うけどわざわざ関係ないことを持ち出してくる必要ないのにね

849 名前:デフォルトの名無しさん [2022/01/30(日) 23:58:36.03 ID:sjTHXMe20.net]
>>841
嘘ばっかと指摘されてもしつこく書く馬鹿

850 名前:デフォルトの名無しさん [2022/01/31(月) 02:05:16.34 ID:YxHLvxrCM.net]
ruby馬鹿だろ



851 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 04:36:16.27 ID:ByM6Elur0.net]
>>822
Sub save_sheet_as_csv()
  save_folder = "c:\tmp\" '保存先フォルダ指定
  file_name = ActiveSheet.Name & ".csv" 'シート名をファイル名に
  ActiveSheet.Copy '現在のシートを新規ブックへコピー
  Application.DisplayAlerts = False '警告を無視して上書き保存できるようにする
  ActiveWorkbook.SaveAs Filename:=save_folder & file_name, FileFormat:=xlCSV 'CSVで保存
  Workbooks(file_name).Close '新規ブックを閉じる
End Sub

852 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 08:22:57.51 ID:q62M0ujX0.net]
何が嘘で本当はどうなのかを書けば一発なのに

853 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 09:22:06.68 ID:KIxAb0730.net]
いやさすがにウソは書き込みしないでいただきたい。
このスレは真面目に勉強したい人もいますので。。
ウソを本当のように書かれると信じちゃうじゃん。

854 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 09:28:32.59 ID:xKkvHIL7d.net]
JSとか関係ない話を持ち出してる人のレスが問題なだけでVBAの回答だけなら嘘はないんじゃないの
それと書かれてる内容で勉強したいなら実際に動かしてみるべきだと思うよ

855 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 09:38:43.11 ID:9sC6tTKap.net]
JSはWebのエクセルの話から派生したみたいだからあながち完全にスレチという訳でもなさそうだな
一応俺も少しJS齧ってはいるけど嘘を書いているようには見えないなぁ
どの辺が嘘なんだろ?

856 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 10:13:50.76 ID:zlqGzvHc0.net]
>>849
嘘ではなかった、アドイン入れたらJS使えたわ
ただ、ぱっと触った所vbaでいいとしか思わんかった。慣れてる方が楽でいい
jQueryも使えると思うけど、使う理由はないと思う。あれセレクタ便利になるけど、エクセルjsでは使わないような

ただwebエクセルでの使い方がわからんかったけど、多分一生使わないからもういいや

857 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 10:25:32.89 ID:xKkvHIL7d.net]
自分は嘘と言ってるつもりはないけど話が散らかりすぎてしかもどうでもいいことをダラダラ書きすぎと思ってるけどね
知ってることをいろいろ言いたいのかもしれないけどスレチだってことをわきまえてほしい

858 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 10:46:32.75 ID:e1XVzmlT0.net]
Web版Excelのマクロ機能(JSスクリプト)は家庭向け製品では使えない
いまのところ法人向け製品だけの機能

859 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 10:58:28.57 ID:zlqGzvHc0.net]
>>852
ああそういうことね、ありがとう

860 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 11:28:12.04 ID:KIxAb0730.net]
まあ、ウソホントの話は置いといてマッタリ平和にやりましょうよ



861 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 12:34:07.47 ID:/myUa4Xt0.net]
争いが嘘か、平和が嘘か

862 名前:デフォルトの名無しさん mailto:sage [2022/01/31(月) 12:47:21.32 ID:PJdTm1ZT0.net]
JavaScriptと書いてくれ、途中まで理解が噛み合わなかったわ笑






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<287KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef