Excel VBA 質問スレ Part48 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん 転載ダメ©2ch.net (ワッチョイ 6f8e-Fc1g)
垢版 |
2017/05/16(火) 08:24:45.78ID:iIGA/64l0
!extend:checked:vvvvv:1000:512

スレ立ての際は一行目に
!extend:checked:vvvvv:1000:512
と入れてスレ立てして下さい

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

※前スレ
Excel VBA 質問スレ Part47 [無断転載禁止]©2ch.net
http://echo.2ch.net/test/read.cgi/tech/1489557874/

※関連スレ
VBAなんでも質問スレ Part2
http://echo.2ch.net/test/read.cgi/tech/1432173164/
Access VBA 質問スレ Part1
http://echo.2ch.net/test/read.cgi/tech/1328536426/
Excel総合相談所 125
http://echo.2ch.net/test/read.cgi/bsoft/1481369538/
VIPQ2_EXTDAT: checked:vvvvv:1000:512:----: EXT was configured
2017/05/29(月) 19:34:45.91ID:Q1hkb32K0
マクロ初心者ですが質問させてください。
Sheet1のB1-B16000の文字列を同じファイル内の新規シートに
699列毎コピーしたいです。

ググって下記まで作ったのですがエラーが出ます
いかんせん知識が無いため、何が間違っているのか分からないです。
どこを修正すればいいのかご教示いただけますでしょうか。


Sub マクロの記録改()
  Dim n As Long '変数の定義
  For n = 1 To 15206 Step 699
    Sheets("Sheet1").Select '元シートの「Sheet1]を選択
    Application.Goto Reference:="R" & n & ":R" & n + 699
    Selection.Copy 'コピー
    Sheets.Add 'シートを追加
    ActiveSheet.Paste '貼り付け
  Next n
  Application.CutCopyMode = False 'コピーの解除
End Sub
2017/05/29(月) 19:48:29.74ID:aGWTIe1b0
>>306
とりあえず走らせたけどエラーでなかったよ
どこで出るの?

そもそも何をしたいの?
元々あるのはsheet1だけとして
sheet2のA1にB1-B699貼り付け
sheet3のA1にB700-B1399貼り付け
ってこと?
2017/05/29(月) 19:59:34.93ID:CxTrZaFuM
>>307
699毎なのでB700-B1398じゃね?
2017/05/29(月) 20:27:18.52ID:Q1hkb32K0
失礼しました
説明が間違ってました。
エラーではなくて、A行もコピーしてしまうのでB行をA行にコピーしたいです。
まさに、>>307-308さんの言ってることをやりたい形です!!


ちなみに別bookにコピーする場合は、
どういった記述にすれば良いのでしょうか?
2017/05/29(月) 20:40:52.02ID:2e2e3QA1d
>>309
A列に貼るようにするなら
"R" & n & "C2:R" & n + 699 & "C2"
に変えるだけかな
2017/05/29(月) 20:52:28.37ID:aGWTIe1b0
>>309
こんな感じかねぇ
http://www.dotup.org/uploda/www.dotup.org1264912.zip.html

Sub foo()
'setで参照を作成しておく
Set コピー元シート = ThisWorkbook.Sheets("main")
Set コピー先ブック = Workbooks.Open("./copy.xlsx")
'何行ごとか
処理行数 = 699
'ループ
For i = 1 To 21
Set コピー先シート = コピー先ブック.Sheets.Add(After:=Sheets(Sheets.Count))
'コピーでもいいけど、あえてvalueで処理。どっちでもいい
For k = 1 To 処理行数
コピー先シート.Cells(k, 1).Value = コピー元シート.Cells(k + (i - 1) * 699, 2).Value
Next
Next
End Sub
2017/05/29(月) 20:53:24.05ID:aGWTIe1b0
そういや昔はsetがさっぱり意味不明だったな
今は普通に使えるけど、なんだったんだろう
2017/05/29(月) 21:01:49.00ID:dfm78vLC0
>>312
ま、やらしぃ
2017/05/29(月) 21:12:47.40ID:aGWTIe1b0
>>313
sexじゃないよ><
2017/05/29(月) 21:15:07.23ID:CxTrZaFuM
>>314
今は普通に使えるsexとか
2017/05/29(月) 22:00:26.21ID:YdL4iPz30
>>311
だからfooを使うんじゃねえhg
2017/05/29(月) 22:02:15.89ID:aGWTIe1b0
>>316
理由教えてくれよ
理由がなければ使い続けるぞ。名前考えるの一番めんどくさいからな
2017/05/29(月) 22:15:25.36ID:MyydkzNO0
毛を吹き飛ばされるかんじがするんじゃないの?
2017/05/29(月) 22:23:14.52ID:EJnEHaIs0
俺ルールに違反してんだろ?スルーしろよ
2017/05/29(月) 22:31:37.50ID:nT+AAD4u0
俺ルールかっけー!
2017/05/29(月) 22:34:37.05ID:YdL4iPz30
>>317
>名前考えるの一番めんどくさいからな
代わりにわたしが考えたよ
hogeでよろ
これでもう考える必要ないよ

>>318
そうです
>>319
生理的に無理
322デフォルトの名無しさん (ワッチョイ 3bc7-DNyE)
垢版 |
2017/05/29(月) 22:38:31.20ID:A34reMmc0
ピリピリしてるハゲってなんていうか、微笑ましいよな
ハゲ好きだわーオレ、なりたくねーけど
2017/05/29(月) 22:56:21.54ID:aGWTIe1b0
>>321
hogeがfooにまさるメリットとは?
先にfooのメリットを書くと、
・文字数が少ない
です
2017/05/29(月) 23:01:15.36ID:YdL4iPz30
>>323
じゃあ f だけにして
・文字数が少ないよ
2017/05/29(月) 23:04:09.54ID:aGWTIe1b0
>>324
fooは慣例の単語
それを不必要に削ると無駄な間違いが増える
揚げ足取りしか出来ないなら使い続けるね
2017/05/29(月) 23:05:06.76ID:73+YE/SF0
そもそもhogeとfooが何なのか分からん。
C言語のスタジオえっちみたいなものですか?
2017/05/29(月) 23:06:16.47ID:YdL4iPz30
>>325
Sub foo()
としか使ってないのに、なんの間違いが増えるの?
2017/05/29(月) 23:08:06.88ID:aGWTIe1b0
>327
名前が被る
2017/05/29(月) 23:08:08.96ID:qTUj1SpC0
4〜3月の売上をまとめて円グラフで描画したいんですがどう描けばいいのかわかりません
そもそも各月の売上をまとめて円グラフで描画しようとするのが間違いでしょうか?
2017/05/29(月) 23:10:27.21ID:T7IU40/g0
ヒソヒソ( ゚д゚)ヤダァ(゚д゚ )ネェ、キイタ?( ゚д゚)オクサン(゚д゚ )アラヤダワァ ハゲテルノニExcelツカッテルンデスッテ! シツレイシチャウワネ
2017/05/29(月) 23:10:38.64ID:aGWTIe1b0
>>329
はい
扇風機なら夏、おもちゃなら必ず12月が伸びるので毎年同じ形になる円グラフは向いていません
折れ線グラフで前年度、その前の年度を重ねて昨年度対比にするとわかりやすいと思います
2017/05/29(月) 23:21:33.31ID:YdL4iPz30
>>328
被ってるのお前のあそこだろ
2017/05/29(月) 23:23:51.96ID:aGWTIe1b0
>>332
結局「なんとなく嫌い」以上の理由が一切ないの?
申し訳ないがそれでは従う気にはならないなぁ
2017/05/29(月) 23:25:30.91ID:YdL4iPz30
Sub fooをNGにした
2017/05/29(月) 23:29:17.49ID:YdL4iPz30
>>333
ところで何であなたワッチョイの後半部分ころころ変わるの?
2017/05/29(月) 23:33:39.65ID:aGWTIe1b0
>>334
だから何www

>>335
知らないよ。プロバイダはio光。別に回線を繋げなおしたりはしてないよ
2017/05/29(月) 23:55:50.00ID:YdL4iPz30
>>336
eoだろ
無駄な間違いが増えるとか言ってる割に2文字すら間違えるっていうwww
2017/05/29(月) 23:56:19.54ID:EJnEHaIs0
これからは Sub foo()って書いとけば馬鹿避けになるのね。了解!!
2017/05/29(月) 23:56:51.93ID:aGWTIe1b0
>>337
(ノ∀`)アチャー
Sub fooをNGにしてるなら>>336は本来見えないはずだけど、連鎖NGしてないの?
連鎖NGしないとNGの意味がないからさっさと設定しようね
透明あぼーんがオススメだよ
2017/05/30(火) 00:02:35.81ID:q6a+ppT10
>>338
という結論以外でなかったね
大体予想してたけど、無意味な結論にたどり着くというのも有意義なことだ
2017/05/30(火) 00:05:37.88ID:OSl0TMez0
>>339
効いてる効いてるwww
2017/05/30(火) 00:09:03.85ID:q6a+ppT10
>>341
実は>>337でひっかかることを予想して>>339>>336の直後に書いてたんだよ
ほんとは>>337の5秒後以内に書き込みたかった。リロードしてる内にめんどくさくなった
1分空くと後付っぽい?
2017/05/30(火) 00:09:14.81ID:yu6lRt6yx
>>340
同意する

ID:YdL4iPz30
さよなら。
また来世でな
2017/05/30(火) 00:11:22.34ID:OSl0TMez0
>>342
悔しいの?www
後付けかどうかより
>リロードしてる内にめんどくさくなった
お前は面倒発言ばっかりだなwww
2017/05/30(火) 00:12:08.17ID:q6a+ppT10
>>344
vbaなんて仕事が面倒くさいから習得するもんだろう
それ以外なんかあんの?
2017/05/30(火) 00:13:23.62ID:OSl0TMez0
>>345
vbaじゃなくてVBAってちゃんと大文字で書け
2017/05/30(火) 00:16:18.61ID:q6a+ppT10
>>339>>337の数秒後にレスできたら完璧だったんだけどなぁ
これはちょっと悔しかった。予想以上にレスが遅かった。見え見えの釣りに飛びつくと思ったら2分もかかるとは
俺の実力も足りんし、忍耐力も足りなかった
申し訳ない

>>346
なんのために?vbaって書いてそれで誰か損してるの?
じゃあ書いてやるよwwwVBA!VBA!満足かwww
2017/05/30(火) 00:17:08.32ID:OSl0TMez0
>>347
満足したありがとう
2017/05/30(火) 00:17:13.63ID:q6a+ppT10
だから>>347が見えるってことはNGにしてないってことなの
何回引っかかるの
2017/05/30(火) 00:45:32.08ID:RIAflGJM0
すぐ消すテストプログラムをfooとかにしたことはないなあ。
2017/05/30(火) 06:56:36.98ID:tBmyQlvfM
>>350
ほんとに一時的なら t とか x とかにしてるわ
2017/05/30(火) 08:10:45.63ID:06cdz9ADx
久々にスレ開いたらハゲが躍動してて笑った
2017/05/30(火) 08:16:18.25ID:Pn7VLVPda
なんやこのガイジは
2017/05/30(火) 08:50:49.88ID:C+7xWm9cM
>>310,311
亀レスですいません!!!
できました!!!!
ありがとうございました!!
2017/05/30(火) 12:29:57.72ID:1+UI8ryZ0
誰かアドバイスおばお願いできませんか

野球関連の仕事をしているんですが、選手成績のデータをcsvで貰っていて
それを自分の所のcsvに入力しないといけないんですが、いかんせん数が膨大でデータを
並び替えやら抽出やらで変換したいんですが、この場合に覚えた方が良いプログラムってのは
エクセルでマクロを組むってのが手っ取り早い近道なんでしょうか?
それともほかのプログラム言語を覚えてソフトを開発って手も考えた方が良いのでしょうか?
2017/05/30(火) 12:42:58.11ID:I4Et1tpDd
>>355
「自分の所」って?
一人で自由度が高いならSQLServer Express入れるのが一番だと思う。
タダだし将来性もある。難しくもない。
2017/05/30(火) 12:44:07.68ID:I4Et1tpDd
膨大っても高々数十MBのレベルでしょ?
2017/05/30(火) 13:14:12.67ID:1+UI8ryZ0
>>356
正確に言い過ぎると微妙な案件だと思って濁し気味なのですが、貰っているデータというのは
プロ野球のデータ提供サービスのBISと言われるデータ提供会社のcsvで
『自分』というのは自分の会社で使っている野球中継用のソフトとなります。
(野球中継用のソフトもcsvでデータを賄っているのですが、当然フォーマットが違うので
貰ったデータをもとに普段は手入力しています。)

>>357
確かに膨大というのはSEさん達からしたら笑ってしまうレベルの数なのでしょうが
限られた時間(集合時間から試合開始までの時間)で手入力で間違いなく必要項目を入力するという問題なので
プログラムにまかせて一括変換できるのなら、間違いも少ないでしょうし、オペレーターの習熟度に左右されずに仕事につかせやすいので、
非常に有益な事だと思ったのです。

本来なら仕様を出して、プログラム作ってもらえば済むことなのかもしれませんが
自分の所で使っている野球ソフトも仕様変更でcsvの項目順番とかずれる可能性もありますし、
提供してもらっているデータも仕様変更とかで順番ずれたりした時に毎回発注とかしたくないので
急ぎではないし自分で作れる様になりたいなと思って相談させてもらいました。
2017/05/30(火) 13:29:23.00ID:06zvEzNR0
必要なデータ抽出して、並び替えて、別ソフト用のCSVに変換するってことかな?
エクセルでもできるだろうけど、自分ならC#かPowerShellでつくるな
エクセルを介す必要性がないからわざわざ使いにくくてめんどくさいVBAでやることもない
初心者にはちょうどいいお題だと思うからプログラム作ってみたらいいと思うよ
2017/05/30(火) 13:57:11.50ID:C+7xWm9cM
どなたか助けてください

ブック内の約200シートを全て個別のcsvファイルに保存したいのですが、
うまくいきません。
エクセルファイルと同じフォルダにシート名+".csv"という名前の
CSVファイルを作成することが条件です。

ググって
下記は出てくるのですが、実行してもエラーが出てしまい
CSVにはき出すことが出来ません。
(こちらの環境がMacだからなのでしょうか?)
どこを修正すれば正しく、csvにはき出せるかご教示ください!



Sub SaveCsv()
Dim mySheet As Worksheet
For Each mySheet In ActiveWindow.SelectedSheets
ActiveWorkbook.SaveAs Filename:= _
ActiveWorkbook.Path & "¥" & mySheet.Name & ".csv", _
FileFormat:=xlCSV, CreateBackup:=False
Next
End Sub



エラー文
実行時エラー '1004':
'Sheet183.csv' にアクセスできません。
2017/05/30(火) 14:01:00.02ID:YF+PwbQtH
>>358
Excel + VBAでいいんじゃない?

>>360
これ?
http://darumaexcel.uijin.com/info/pause.html
2017/05/30(火) 14:21:24.38ID:C+7xWm9cM
>>361
ありがとうございます!
ただ直しても同じエラー分が出てしまいます。。。
2017/05/30(火) 14:27:48.25ID:1szQs/d90
>>358
AccessなりSQL Serverなりのデータベースソフトでcsvのインポートを試行錯誤してみればすぐに出来るようになる。
2017/05/30(火) 14:43:31.52ID:YF+PwbQtH
>>362
SaveAs行の前に、mySheet.Selectを追加してみて
2017/05/30(火) 14:53:27.61ID:C+7xWm9cM
>>364
できないですね、、、

実行時エラー '1004':

‘選択中のシート名.xlsx' にアクセスできません。

と表示されます。
2017/05/30(火) 15:14:30.20ID:EOieG+pf0
>>355
perl PHP 辺りが簡単だし便利なモジュールも沢山ある
2017/05/30(火) 15:19:43.12ID:EOieG+pf0
>>355
sqlite3と
firefoxのsqlite3用アドインとかと
SQL言語を使う方法もある
2017/05/30(火) 15:35:45.48ID:YF+PwbQtH
>>365
Excelのバグですかね。
2017/05/30(火) 15:40:39.49ID:oatsCbfo0
単なる当てずっぽうでCSVファイル作成前に同名のcsvファイルが既にあるんならそれを消すなりリネームするなりしてるか?
2017/05/30(火) 15:44:54.03ID:fdB84jON0
数MB程度のテキストデータならピボットでいいと思うが
2017/05/30(火) 16:21:56.98ID:1+UI8ryZ0
みなさん沢山のアドバイスありがとうございます。
言語的にはどれとってもほぼ確実にできるけど、道が沢山ありすぎる状態なんですね。
関数電卓のBASIC程度しかかじっていない軟弱な頭にはどれがとっかかりやすいモノなんでしょうか・・・
2017/05/30(火) 16:40:48.70ID:C+7xWm9cM
>>369
空フォルダなのでファイルは存在してないんですよね、、、
2017/05/30(火) 18:10:35.56ID:YF+PwbQtH
>>371
Excelだったらすぐに試せるだろ
すぐやれ
2017/05/30(火) 19:06:30.89ID:q6a+ppT10
>>360
ぐぐるんじゃなく自分で作れるようになると楽だよ
Sub foo()
Application.DisplayAlerts = False
For Each シート In ThisWorkbook.Worksheets
シート.Activate
ActiveWorkbook.SaveAs Filename:=ThisWorkbook.Path & "\" & シート.Name & ".csv", _
FileFormat:=xlCSV, CreateBackup:=False
Next
Application.DisplayAlerts = True
End Sub

>>371
エクセル+vbaがいい
諦めなければ絶対に完成する。諦めるな
わからなくなったらいつでもおいで
375デフォルトの名無しさん (ワッチョイ 3bc7-x63M)
垢版 |
2017/05/30(火) 19:22:34.02ID:Fp/ortWi0
>>374
> 諦めなければ絶対に完成する。諦めるな
仕事でやってる人には最低のアドバイスだな

ニートのお前とは違うんだよ
仕事ってのは限られた時間の中で最大限の結果を求められる
少しでも人の役に立ちたい気持ちはわからないでもないけど
それ以前に自分がニートだっていう事実を忘れちゃいかんな
お前が本当に誰かの役に立ちたいのだったら
まず自分の身をわきまえ
そして相手の立場を理解するって事が何よりも大切な事だ
よく覚えておけ
2017/05/30(火) 19:26:38.95ID:yu6lRt6yx
>>375
まじでそう思う。


>>375
反省して
ソリューションはどこに記載?
2017/05/30(火) 19:47:55.75ID:q6a+ppT10
>>375
じゃあ諦めて手作業で延々と作業しろってことか
効率的だな〜
378デフォルトの名無しさん (ワッチョイ 3bc7-x63M)
垢版 |
2017/05/30(火) 20:01:37.18ID:Fp/ortWi0
>>377
少しはわかったみたいだな
効率>>>>>>>>>>>>>>自己満足
仕事ってそういうもんなんだよ
2017/05/30(火) 20:09:38.66ID:1szQs/d90
まぁ実際、出来るかどうか分からないVBAよりも、手作業で確実に済ませるという場面は仕事してると出てくるな。
ただ件の話はルーチン業務のマクロ化についての話だから、多少時間が掛かっても挑戦する価値はある。

しかしながらごく一般的な悩みで、それを解決する手段が用意されているのでVBAに拘る必要がないのも事実。
2017/05/30(火) 20:11:24.56ID:q6a+ppT10
マクロの腕上げてどんどん効率化したほうがいいと思うけどねぇ
会社行ってもすること無いから出勤時間減らしたわ
2017/05/30(火) 20:52:10.68ID:1+UI8ryZ0
ありがとうございます。
取りあえずエクセル環境で動くとどの現場でも楽になるので
エクセルマクロでどうにか作ってみます。また、来ざる得なく成る様な気がするので
その時にまた相談に乗ってください。ありがとうございました。
2017/05/30(火) 21:03:04.18ID:0IDFiFSH0
Excelが必要でないならVBAよりはVBSscriptかな
VBScriptはExcel VBAにほぼそのまま持っていける
VBScriptやVBA扱いに慣れたらpowershell
いきなりpowershellでもいいけど前提知識が割と必要になる
powershellの良い入門書って見たことないし
2017/05/30(火) 21:48:33.00ID:RIAflGJM0
>>378
余裕がどれくらいあるかによるけどね
2017/05/30(火) 21:50:18.98ID:Upz1NUPj0
>>374
まだ懲りずにfoo使ってるのニートさん
あ、NGしてないのバレちゃうwww
385デフォルトの名無しさん (ワッチョイ 9faa-w9y6)
垢版 |
2017/05/30(火) 21:56:44.25ID:GySYMHzV0
>>379
ウチの会社の場合、マクロ書いてると「そんな暇があったら直接打ったらいいじゃん」と言われる。バカは手作業こそ
仕事だと思い込むもんなんだよな。
2017/05/30(火) 22:01:43.70ID:Upz1NUPj0
>>360
- ActiveWorkbook.Path & "\" & mySheet.Name & ".csv", _
+ ActiveWorkbook.Path & ":" & mySheet.Name & ".csv", _

こうじゃないかな?
2017/05/30(火) 22:03:50.22ID:Upz1NUPj0
>>360
Sub Example
MsgBox Application.PathSeparator
End Sub

これ実行すると多分¥じゃなくて:が表示されるはず
2017/05/30(火) 22:41:04.16ID:b4dt9kdA0
>>385
その場で言えよw
2017/05/30(火) 22:59:03.08ID:FYFuo4390
セルの書式を保持したまま変数に格納する方法ってありますか?
文字の一部分だけ太字とか、嫌がらせみたいなデータがあるんです。
Copy Destinationで別のシートに格納しろ、とかいうのはなしで。
2017/05/30(火) 23:26:10.83ID:q6a+ppT10
格納だけならsetで簡単にできる
しかし他のセルにこれを適用しようとするとフリーズ。理由は知らん

割りと真面目に
>Copy Destinationで別のシートに格納
したほうがいい気がする

Sub foo()
'A1の一文字目のフォント情報をB1二文字目に
Set bar = Cells(1, 1).Characters(Start:=1, Length:=1).Font
Cells(1, 2).Characters(Start:=2, Length:=1).Font = bar
End Sub
2017/05/30(火) 23:29:44.49ID:KvP+eqH30
>>389
オブジェクトの変数へのコピーができないから無理。
見えないシートやワークブックを一時的に作って、Range.Copy じゃだめなん?
392デフォルトの名無しさん (ワッチョイ 9faa-w9y6)
垢版 |
2017/05/30(火) 23:58:44.86ID:GySYMHzV0
>>388
ああ、言ってる。でも延々と手作業でやって残業時間自慢してるヤツが殆どw
393デフォルトの名無しさん (アウアウイー Sa0f-MJsu)
垢版 |
2017/05/31(水) 02:10:54.01ID:LgGj7rqFa
VBA初心者です。
今データの分析をしてるのですが色々な関数を使ってるシートをとりあえず10000くらいまでデータを作っておいてピポットテーブルで分析しています。
それだとデータが重くなりますが入力されたデータに行をオートフィルで追加することはできますか?
例えば
A列に日付 B列に店名 C列に商品名 D列に個数
を入力していて
列やG列に日付の関数で月やH列にVLOOKUP関数で店舗の種類の仕分けをしています
データを入力した行に関数が自動で追加できるようにするにはどうしたらいいでしょうか?
2017/05/31(水) 03:10:26.82ID:ngSfzLWM0
>>393
イベントを使うといいと思う
例えば4列目に入力があったら5〜7列目がオートフィルされるようにするなら

Private Sub Worksheet_Change(ByVal Target As Range)

If Target.Row > 3 And Target.Column = 4 Then
Range(Cells(Target.Row - 1, 5), Cells(Target.Row - 1, 7)).Select
Selection.AutoFill Destination:=Range(Cells(Target.Row - 1, 5), Cells(Target.Row, 7)), Type:=xlFillDefault
Target.Select
End If
End Sub
2017/05/31(水) 05:55:04.74ID:5otW7Lci0
Excelの機能でやった方が良さそうに見えちゃうな
月で集計は列足さずにピボット側で日付をグループ化すればいいし
範囲の拡張はデータ範囲をテーブルにしておけばいいだけだし

VBAスレだしVBAでやりたいんならまあいいか
2017/05/31(水) 06:30:09.92ID:u3wQ/TLpM
補助列作っとくのが最善だと思う
次点でピボットの集計フィールド追加
2017/05/31(水) 07:14:56.30ID:CCxYhvtc0
>データを入力した行に関数が自動で追加
したいだけなら、テーブルにすればいいのでは

Excelのテーブル機能の使い方まとめ
https://www.forguncy.com/blog/20161014_table
>一覧表の最終行の次の行にデータを入力すると、その上の行に入っている書式設定が自動で反映されます。 計算式も自動で反映します。
398デフォルトの名無しさん (アウアウイー Sa0f-MJsu)
垢版 |
2017/05/31(水) 11:34:55.36ID:2HZ6ZV5Na
イメージと
2017/05/31(水) 14:19:26.52ID:O9qNIaK10
>>360だけど未だに出来ない、アドバイスいただいたものも全てダメしたけどダメ。
200枚ものシートをいちいち手作業でやらないといけないのか、、、
2017/05/31(水) 14:38:23.24ID:vzRkDbrnH
>>399
Excelのバグじゃないというのは確認したか?
アプリケーションの更新とかが出てたりしないか?
2017/05/31(水) 14:40:32.00ID:O9qNIaK10
>>400
エクセルのバグ確認の仕方を知らないので不十分かもしれないですが、
アプリケーションは最新なので、問題無いとおもいます。
2017/05/31(水) 14:44:29.80ID:O9qNIaK10
>>360です
お騒がせしました、これでできたっぽい。
http://excel-magic.com/post-24/
<font color>のどこを修正すれば良いのか分からないので、ひとまず回して見ましたが途中で止めてCSVを200ファイルほど吐き出せました!


これを機会にVBAをちゃんと勉強しようと思いました、、、
2017/05/31(水) 14:44:47.62ID:vzRkDbrnH
>>401
じゃ、マクロを記録しつつシートをCSVで保存してみて、生成されたコードを観察してみるとか。

今回1度きりの作業だったらあきらめて手作業でエクスポートするか、それが嫌なら他のQAサイトで
質問するとか。
2017/05/31(水) 14:50:06.21ID:vzRkDbrnH
>>402
マジか・・・
何がいけなかったんだろうか・・・
2017/05/31(水) 15:23:51.75ID:V02iWLllM
>>402
うまくいきそうで良かった。
リンク先を見てる感じ、
ActiveWindow.SelectedSheets
ActiveWorkbook.Path
のどっちかがcsvを保存した時点でおかしくなってるのかなと感じる。

あと、<font color="#ffff00">と</font>はVBAには無関係なので、丸々削除してオーケー。
詳しく知りたければ、「htmlタグ フォント」でググってみてね。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

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