« 新・関数で出来ますか~? 第4回 解答例 | メイン | 新・関数で出来ますか~? 第5回 王手! »

2017年7 月30日 (日曜日)

コメント

y sakuda

無事着きましたね。
このアドイン、わざわざアドインにする程のものではなく、本体は10行程度の簡単なコードです。
興味のある人がいらっしゃれば、コードも出します。

jyo3

>興味のある人がいらっしゃれば、コードも出します。
うん、、、
使う、使わないは別として、、、
VBAコードは、、、関心あります。・・・よ、、、

y sakuda

>VBAコードは、、、関心あります。・・・よ、、、
すごく簡単なものです。
ThisWorkbookのモジュールに
Private Sub Workbook_Open()
Dim wBar As CommandBar
With Application
For Each wBar In .CommandBars
If wBar.Name = "Cell" Then
With wBar.Controls.Add(Type:=msoControlButton, temporary:=True)
.BeginGroup = True
.Caption = "式の文字列化"
.OnAction = "ExtractFormula"
End With
Exit For
End If
Next
End With
End Sub

標準モジュールに
Sub ExtractFormula()
Dim wRange As Range, wFormula As String
Set wRange = Selection.Resize(1, 1)
wFormula = wRange.FormulaLocal
If wRange.HasArray Then
wFormula = "{" & wFormula & "}"
End If
wRange.Offset(0, 1) = "'" & wFormula
wRange.Offset(1, 1).FormulaLocal = "=len(" & wRange.Offset(0, 1).Address & ")"
End Sub

これだけです^^

y sakuda

あれ?さっき投稿したんだけど、消えてる。
改めて

ThisWorkBookのコードに

Private Sub Workbook_Open()
Dim wBar As CommandBar
With Application
For Each wBar In .CommandBars
If wBar.Name = "Cell" Then
With wBar.Controls.Add(Type:=msoControlButton, temporary:=True)
.BeginGroup = True
.Caption = "式の文字列化"
.OnAction = "ExtractFormula"
End With
Exit For
End If
Next
End With
End Sub

標準モジュールに

Sub ExtractFormula()
Dim wRange As Range, wFormula As String
Set wRange = Selection.Resize(1, 1)
wFormula = wRange.FormulaLocal
If wRange.HasArray Then
wFormula = "{" & wFormula & "}"
End If
wRange.Offset(0, 1) = "'" & wFormula
wRange.Offset(1, 1).FormulaLocal = "=len(" & wRange.Offset(0, 1).Address & ")"
End Sub

これだけです。

y sakuda

コードを張り付けて投稿すると、なぜか消えちゃいます。
どこかタグと重なってるのかな?
それなら、途中から消えるとかのはずなんだけど・・・・
ジョー3に直接EWのメールで送って置きます。

くまぷー

>コードを張り付けて投稿すると、なぜか消えちゃいます。
>ジョー3に直接EWのメールで送って置きます。

私に送付して頂ければ、管理者モード?で
公開させていただきます。m(__)m

y sakuda

送りました。

くまぷー

下がsakudaさんから頂いたコードです。
//////////////////////////////////////////


ThisWorkbookのコード
右クリックメニューを追加するものです。

Private Sub Workbook_Open()
Dim wBar As CommandBar
With Application
For Each wBar In .CommandBars
If wBar.Name = "Cell" Then
With wBar.Controls.Add(Type:=msoControlButton, temporary:=True)
.BeginGroup = True
.Caption = "式の文字列化"
.OnAction = "ExtractFormula"
End With
Exit For
End If
Next
End With
End Sub

標準モジュール これが本体です。
Sub ExtractFormula()
Dim wRange As Range, wFormula As String
Set wRange = Selection.Resize(1, 1)
wFormula = wRange.FormulaLocal
If wRange.HasArray Then
wFormula = "{" & wFormula & "}"
End If
wRange.Offset(0, 1) = "'" & wFormula
wRange.Offset(1, 1).FormulaLocal = "=len(" & wRange.Offset(0, 1).Address &
")"
End Sub

コメントの確認

コメントのプレビュー

プレビュー中です。コメントはまだ投稿されていません。

処理中...
コメントを投稿できませんでした。エラー:
コメントを投稿しました。 さらにコメントを投稿する

入力された文字と数字は画像と一致していません。再度入力してください。

最後に、下の画像の中に見える文字と数字を入力してください。これはプログラムを使ってコメントを自動的に投稿するのを防ぐために行われています。

画像を読み取れない場合は 別の画像を表示してください。

処理中...

コメントを投稿

アカウント情報

(名前は必須です。メールアドレスは公開されません。)

2024年8 月

        1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31

TOP メニュー