EXCEL VBA に詳しい方ご指導下さい。 やりたい事は表示形式を、「mm/dd」にしたい C:\Temp に、moto.xlsm と Book1.xlsx があります。
EXCEL VBA に詳しい方ご指導下さい。 やりたい事は表示形式を、「mm/dd」にしたい C:\Temp に、moto.xlsm と Book1.xlsx があります。 moto.xlsm の Sheet1 の Range("A2") に 2014 moto.xlsm の Sheet1 の Range("B2") に H26 と記入しています。 moto.xlsm の VBA を実行すると Book1.xlsx をコピーして、 ファイル名を 2014H26_01_02.xlsx にします。 2014_26_01_02.xlsx の Sheet1 の Range("A1") に 2014/01/02 を記入し 書式を mm/dd にします。 書式を mm/dd にしているのに、2014/01/02 と表示されます。 2014/01/02 と記入して 01/02 と表示させるには、下記のコードを どう修正すればいいですか。 詳しい方がいらっしゃいましたらご指導の程よろしくお願い致します。 Sub M3A() Dim ArrTSUKI As Variant Dim ArrHI As Variant Dim i As Integer Dim j As Integer Dim FileName As String Dim F_Name_Moto As String Dim F_Name_Shin As String Dim TWP As String Dim WB As Workbook Dim WS_1 As Worksheet Dim UB As String Dim SURA As String Dim SEIREKI As String Dim WAREKI As String Dim TSUKI As String Dim HI As String Dim KM As String Dim KAKIKOMI_MOJI(0) As String Set WS_1 = Worksheets("Sheet1") With WS_1 SEIREKI = .Cells(2, "A").Value WAREKI = .Cells(2, "B").Value End With KM = ".xlsx" UB = "_" SURA = "/" TWP = ThisWorkbook.Path F_Name_Moto = TWP & "\" & "Book1.xlsx" ArrTSUKI = Array("01") 'Debug用 ArrHI = Array("02", "03") 'Debug用 For i = LBound(ArrTSUKI) To UBound(ArrTSUKI) For j = LBound(ArrHI) To UBound(ArrHI) TSUKI = ArrTSUKI(i) HI = ArrHI(j) F_Name_Shin = TWP & "\" & SEIREKI & UB & WAREKI & UB & TSUKI & UB & HI & KM FileCopy F_Name_Moto, F_Name_Shin KAKIKOMI_MOJI(0) = SEIREKI & SURA & TSUKI & SURA & HI Set WB = Workbooks.Open(F_Name_Shin) WB.Worksheets("Sheet1").Cells(1, "A").Value = KAKIKOMI_MOJI Cells(2, "A").Select Selection.NumberFormatLocal = "mm/dd" 'ファイルを保存し、クローズする Application.DisplayAlerts = False WB.Close SaveChanges:=True Application.DisplayAlerts = True Next j Next i Set WS_1 = Nothing Set WB = Nothing End Sub
Excel | Visual Basic・45閲覧・25
ベストアンサー
間違いのようですね。 変数設定で:KAKIKOMI_MOJI(0) となっているのに 書き込み段階では KAKIKOMI_MOJI になっています。どちらかに統一してみてください。 ※慌てないで、デバッグすれば見つかる間違いですよ。
質問者からのお礼コメント
qgl*さんご指導ありがとうございました。
お礼日時:1/18 1:03