Yes, you can prepare charoset ahead of time. In fact, many people find that the flavors meld together even better when it's allowed to sit in the refrigerator for a day or two before serving.