電子書籍の厳選無料作品が豊富!

【やりたい事】
B1セルに、関数の "=MID(A1,1,3) & "" - "" & MID(A1,4,4) & "" - "" & MID(A1,8,4)" 
を入力したい

以下コードにて B列に追加 ws2.Columns("B").Insert を実行せずに(コードより省く)

B1へマクロによって、転記すると、書式が標準になって、通常通り動く関数が転記されます

B列を追加した後に、入れると 関数が 文字列として貼付られ、動きません
改善方法、ご存じの方、教えて下さい




A列 B列
1行目 11111111111 =MID(A1,1,3) & " - " & MID(A1,4,4) & " - " & MID(A1,8,4)


【コード。動きます】
Sub 電話番号ハイフンあり()

Dim filePath As String
filePath = "C:\Users\2020\OneDrive\マクロ\契約番号ハイフンありへ.xlsx"

Dim wb2 As Workbook
Set wb2 = Workbooks.Open(filePath)

Set ws2 = wb2.Worksheets("Sheet1")


ws2.Columns("B").Insert


ws2.Range("b1").Formula = "=MID(A1,1,3) & "" - "" & MID(A1,4,4) & "" - "" & MID(A1,8,4)"

End Sub

A 回答 (1件)

こんばんは



マクロは手作業を自動化したようなものですので、手操作の時にどうするかを考えればよいです。

記載がありませんけれど、A列の書式設定が文字列になっているのでしょう。
(B列を挿入した際に、A列の書式が参照されますので)
そのまま手操作で式を記入すれば、同様のことがおきます。
式の入力前に、B列の書式を標準などに設定しておけばすむ話です。
    • good
    • 1
この回答へのお礼

いつも、ご指導ありがとうございます

ご指摘ありがとうございます。単純な事だったんですね。
ありがとうです

お礼日時:2024/06/09 22:16

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A