You present very little information. Some useful tidbits would be:
1. The ID of the message.
2. Any parameters and the data types.
Simple like int and double or a complex structure.
3. Is the VBA using SendMessage or PostMessage
4. Is the VBA macro sending the message to a specific handle?
Or is it a broadcast message?
These things you need to know in order to do the c# implementation.
Basically you create a Windows Form application and then override the method
PreProcessMessage
public override bool PreProcessMessage(ref Message msg)
{
if (msg.Msg == YOUR_MESSAGE_ID_AS_AN_INT)
{
IntPtr wparam = msg.WParam;
IntPtr lparam = msg.LParam;
msg.Result = new IntPtr();
}
return base.PreProcessMessage(ref msg);
}