Pattern p = Pattern.compile("\\b(?:Input|Calc)![A-Z]\\d+\\b");
(?:Input|Calc)
— either keyword
!
— the literal exclamation that both forms share
[A-Z]
— exactly one uppercase column letter
\\d+
— one or more digits
\\b
— word boundaries so you don’t bleed into adjacent text
Quick test with your samples
Matches found:
ADD(Input!A34 + Calc!D93)
→ Input!A34
, Calc!D93
Input!D343 = 1000
→ Input!D343
Calc!D71=IF(HasValue(Input!D4), "…")
→ Calc!D71
, Input!D4