![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
Excelファイルのシートをラインで書出しコードを作成しましたが
シート名がファイル名になってしまいます。
シート名「申請data」のデータを「申請data」のファイルに変えたいのですが
うまくいきません。
このコード下記のサイトをから作成しました。
https://excel.kuuneruch.com/make-csv/
Public Sub CSV書出し()
Dim shtData As Worksheet
Dim kugiri As String
Dim kukuri As String
Dim filePath As String
Dim lastRow As Long
Dim lastCol As Long
Dim varData As Variant
Dim i As Long
Dim j As Integer
Dim line As String
Dim MyPath As String, 事業場 As String
Dim 氏名 As Variant
Dim ChangeName As String
事業場 = Sheets("従業員情報").Range("B2").Value
氏名 = Sheets("従業員情報").Range("D2").Value
'保存先を指定
' MyPath = kanriALL & "\申請data" & "\" & 事業場
If 事業場 = "此花" Then
事業場 = "6_此花"
ElseIf 事業場 = "大和" Then
事業場 = "5_大和"
ElseIf 事業場 = "原町" Then
事業場 = "4_原町"
ElseIf 事業場 = "中島" Then
事業場 = "3_中島"
ElseIf 事業場 = "佃" Then
事業場 = "2_佃"
ElseIf 事業場 = "本社" Then
事業場 = "1_本社"
End If
Dim SPath, FileName, backupFilePath
Dim ws As Workbook
SPath = kanri & "\" & "2_勤怠管理者" & "\" & 事業場 & "\"
FileName = Left(ThisWorkbook.Name, InStrRev(ThisWorkbook.Name, ".") - 1)
'ファイルのフルパスを指定します
If Dir(SPath, vbDirectory) = "" Then 'BACKUP用フォルダーがあるか?
MkDir SPath 'BACKUP用フォルダーを作成します。
End If
'②シートを変数に格納する
Set shtData = ThisWorkbook.Sheets("申請data")
kugiri = ","
kukuri = " "
'⑤CSVファイルパスを変数に格納する
filePath = SPath & FileName & ".csv"
'⑥「データ」シートの最終行を取得する
lastRow = shtData.Cells(shtData.Rows.Count, 1).End(xlUp).Row
'⑦「データ」シートの最終列を取得する
lastCol = shtData.Cells(1, shtData.Columns.Count).End(xlToLeft).Column
'⑧「データ」シートに入力されているデータを配列に格納する
varData = shtData.Range(shtData.Cells(1, 1), shtData.Cells(lastRow, lastCol))
'⑨作成するファイルを開く
Open filePath For Output As #1
'⑩CSVデータを書き込みする
For i = 1 To lastRow
line = ""
For j = 1 To lastCol
line = line & kukuri & varData(i, j) & kukuri
If j <> lastCol Then
line = line & kugiri
End If
Next
Print #1, line
Next
'⑪作成するファイルを閉じる
Close #1
MsgBox "事業場別に管理者使用データ書出し完了"
End Sub
宜しくお願い致します。
No.3
- 回答日時:
FileName = Left(ThisWorkbook.Name, InStrRev(ThisWorkbook.Name, ".") - 1)
と指定していますから、エクセルのファイル名になります。
FileName=”申請データ”
とすれば 申請データ.csvというファイルで作られます。
No.2
- 回答日時:
csvファイルは複数のシートを保存することはできませんから、
FileName に "申請data" を入れればいいのではないでしょうか。
filePath = SPath & "申請data.csv"
または
FileName = ActiveSheet.Name
とか。
No.1
- 回答日時:
どゆこと?
CSVファイルのシート名を、ファイル名以外に変えたいってこと?
今、どうなっていて、で、どうしたいの?
※ちなみに、CSVファイルのシート名は変更できないはずだけど。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) フォルダの場所を可変にしたいです(マクロ) 4 2023/05/11 10:00
- Visual Basic(VBA) 貼り付けた値が消えていく 以下はソースファイルの2番目のシートのB6から最終行を取得 ターゲットファ 2 2023/07/27 12:23
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) VBA 請求書自動作成 3 2022/04/24 01:58
- Visual Basic(VBA) VBAが止まります。 3 2022/08/31 14:09
- Visual Basic(VBA) VBAのユーザーフォームのテキストボックスに入力制限をしたい 6 2022/11/15 08:28
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
- Visual Basic(VBA) excel vbaでvlooupの変数がわかりません。 7 2022/05/30 09:35
このQ&Aを見た人はこんなQ&Aも見ています
-
「環境が人を育てる」って本当?環境によって人格や生き方は本当に変わるのか
環境が人生に与える影響は実際どれほどのものなのか、専門家の田宮由美さんに伺った。
-
【EXCEL-VBA】保存の時にシート名が変わってしまう
Excel(エクセル)
-
フォルダ内の全ブックのシート名を変更したいです。
Excel(エクセル)
-
【Excel VBA】CSV取込時、数字の先頭の0を消えないようにするには?
Excel(エクセル)
-
-
4
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
5
エクセルVBA→シート名でCSV出力する際、シートの文字列はそのままで、CSVでは文字を置き換えて出
Visual Basic(VBA)
-
6
もしセルが#N/A"なら~をする・・・には?"
Excel(エクセル)
-
7
CSVファイルの中で、「 , 」カンマを使いたい
その他(コンピューター・テクノロジー)
-
8
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
9
EXCEL VBAで、セルの文字列の前後に文字を入力する方法は?
その他(Microsoft Office)
-
10
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
11
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
12
特定の文字を含むシートだけマクロ処理をしたい
Visual Basic(VBA)
-
13
Excel VBAで同じフォルダ内のファイルを開くには?
Excel(エクセル)
-
14
Excelで数値→文字列変換で指数表示になったものをいっぺんに直したい
Excel(エクセル)
-
15
エクセルのシート名の変更ができません
Excel(エクセル)
-
16
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
17
VBAでシートコピー後、シート名が重複している時の処理
Access(アクセス)
-
18
ExcelVBAで最終行を誤認する問題の回避方法
Visual Basic(VBA)
-
19
exeファイルの中身を見ることは可能ですか?
フリーソフト
-
20
【VBA】ExcelマクロでCSVファイルに保存したデータが"で囲まれてしまう
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
openした後、closeしないでプロ...
-
VBAでCSVファイルを途中行まで...
-
CSVファイルの中身
-
VBAで巨大なファイルの途中から...
-
ExcelをCSV書き出す場合のシー...
-
データファイルをプロットする(...
-
vNoteのBODY部の取得(長めです)
-
C#でCSVファイルを逐一更新したい
-
CGI(Perl)でWeb上から作成...
-
エクセルVBA コードが同じでも...
-
EXCEL VBAでフォルダに多数のCSVファ...
-
サーバー上にあるcsvの活用・・・
-
動画像から静止画を取り出すには
-
perlで容量の大きいCSVファイル...
-
VB6.0でDB接続する際に切断時の...
-
ReadLineでの読み出し行を指定する
-
アクセスのように
-
csvファイル改行コードの置換に...
-
perlにて2つのファイル比較
-
VBAでCSVファイルの特定行を書...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAでCSVファイルを途中行まで...
-
VBAでCSVファイルの特定行を書...
-
openした後、closeしないでプロ...
-
ExcelをCSV書き出す場合のシー...
-
エクセルVBA コードが同じでも...
-
VBAで巨大なファイルの途中から...
-
ReadLineでの読み出し行を指定する
-
perlで、後ろの行を読んで、前...
-
JavaでCSVファイルを高速に読む...
-
MATLAB グローバル変数の宣言
-
perlにて2つのファイル比較
-
C言語でのファイルのデータ更...
-
拡張子 ”log” と ” dat” の違い
-
ADOによるCSVファイルからのデ...
-
VB6.0でDB接続する際に切断時の...
-
2つのCSVファイルをマッチング
-
Perlの変数に文字数制限(容量...
-
perlで容量の大きいCSVファイル...
-
データファイルをプロットする(...
-
Perl Vlookupみたいに
おすすめ情報
現状のシート名はファイル名になっています。
CSVのシート名は変更出来ないのですね。
知りませんでした。
書出しシート名と同じシート名にしたいのです。
ShowMeHowさん
ファイル名はこのままで良いのですが、シート名を別の名前にしたいのですが・・・。
無理でしょうか?
くんこばさん
いつも有難う御座います。
CSVファイルのシート名はファイル名で無いとダメなのですか?
ファイル名とシート名を別名にしたいのですが・・・。