Dealing with multiple types in an excel sheet
A few nitpicks in general:

Your indentation is off

I'm not sure whether that's just a copy paste-error or actually intended, but it's convention to indent the class body by 4 Spaces.

public class MultiTypeValue {

    private Map //...


Eager initialization saves you some pain

Instead of initializing your values in the constructor, you might prefer to eagerly initialize the Map as a final field:

public class MultiTypeValue {

    private final Map&lt;Class&lt;?&gt;, Optional&lt;?&gt;&gt; values = 
      new ConcurrentHashMap&lt;&gt;();
    // ...


Why do you disallow an empty map?

I don't think it's a wise choice to disallow an empty Map if you don't validate the class-object pairs you put in anyways. As such initializing the map with an empty Optional seems... unhelpful.

Either you stop requiring classes for construction or you make use of the classes by validating you're only updating a value of an allowed class instead of just silently taking it:

public void put(Class&lt;?&gt; clazz, Object value) {
    if (values.containsKey(clazz)) {
       values.put(clazz, Optional.ofNullable(value));
    }
}


Use generics when putting a value

You should really do some more checking when you put a value. Consider the following:

public void &lt;T&gt; put(Class&lt;T&gt; clazz, T value) {


this is where it gets really interesting, since you can just extract the relevant class from your argument:

public void &lt;T&gt; put(T value) {
    Class&lt;T&gt; clazz = value.getClass();


I'm not quite clear on how your requiremnts / usage of this class is though, so this may just completely miss your usecase.

The factory method is unnecessary

As of now you're simply misusing your factory method as a proxy for your constructor. Usually you'd implement a factory method to allow for caching and instance control. Since you don't do either of that here, the factory method isn't necessary and you should just expose the constructor directly to simplify things

Missing documentation

One of the reasons I wasn't sure what exactly you intend this class for is that it's completely undocumented.

You explain nothing on this class and as an external developer on your project I'd be very confused by it I daresay. Then again I haven't seen it in usage context, but either way:

This seems like a core class for your functionality and it should be documented accordingly