<commit_before>﻿module MyRibbon

open System.Windows.Forms
open System.Runtime.InteropServices
open Microsoft.Office.Interop.Excel
open ExcelDna.Integration
open ExcelDna.Integration.CustomUI

// This defines a regular Excel macro (in Excel you can press F8, type in the name "showMessage", then click the Run button).
// For the ribbon, it will be run through the ExcelRibbon.RunTagMacro(...) helper, which run whatever macro is specified in the button tag attribute
// One advantage is that you can 
[<ExcelCommand>]
let showMessage () =
    XlCall.Excel(XlCall.xlcAlert, "Hello from a macro!") 
    |> ignore


// This type defines the ribbon interface. It is a public class that derives from ExcelRibbon
type public MyRibbon() =
    inherit ExcelRibbon()<commit_msg>Add ComVisible(true) attribute for Ribbon, which helps with new F# projects<commit_after>﻿module MyRibbon

open System.Windows.Forms
open System.Runtime.InteropServices
open Microsoft.Office.Interop.Excel
open ExcelDna.Integration
open ExcelDna.Integration.CustomUI

// This defines a regular Excel macro (in Excel you can press F8, type in the name "showMessage", then click the Run button).
// For the ribbon, it will be run through the ExcelRibbon.RunTagMacro(...) helper, which run whatever macro is specified in the button tag attribute
// One advantage is that you can 
[<ExcelCommand>]
let showMessage () =
    XlCall.Excel(XlCall.xlcAlert, "Hello from a macro!") 
    |> ignore


// This type defines the ribbon interface. It is a public class that derives from ExcelRibbon
[<ComVisible(true)>]    // This attribute is only needed if there is an assembly-level [<assembly:ComVisible(false)>] attribute.
type public MyRibbon() =
    inherit ExcelRibbon()
{'fraction_non_alphanumeric': 0.08145580589254767, 'fraction_numerical': 0.0011554015020219526, 'mean_word_length': 4.481012658227848, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6925120', 'n_tokens_mistral': 517, 'n_tokens_neox': 481, 'n_words': 204}