Muchas gracias amigos.
La respuesta de
radenf me dio una pista. Buscando "fixed bugs xe3" encontré esta lista de problemas corregidos en XE3:
http://edn.embarcadero.com/article/42606
En la cual se incluye este informe de calidad:
http://qc.embarcadero.com/wc/qcmain.aspx?d=67556
En él se describe el mismo problema que planteé anteriormente. Según se puede leer, éste fue encontrado en Delphi 2009 y estuvo presente hasta Delphi XE2, pues ahí dice "Resolved in Build: : 17.0.4625.53395" (XE3 es la versión 17 de Delphi).
Estoy por liberar la siguiente actualización de GHF para XE2, y en ella incluiré ciertas clases relacionadas con
XML y Excel que ya tenía en la edición para Delphi 7. No obstante, primero había que probar que el código de dichas clases funcionaran bien en XE2, y así fue como me topé con el asunto del WideChar. Afortunadamente esto se presentaba en un sólo lugar del código, pero en adelante lo tendré previsto cuando use automatización en las versiones desde 2009 hasta XE2.
Pongo aquí el método en cuestión, ya con el molde de tipo y un puntual comentario (puede servir a otros para agregar esa misma nota cuando sea el caso):
Código Delphi
[-] Function TghOpenXMLSpreadsheet.GetValue (Const ACell :String) :Variant;
Var
CellObj :OLEVariant;
Begin
CellObj := Cell (ACell);
If VarIsClear (CellObj) Then
Result := Null
Else
Begin
Result := CellObj.SelectSingleNode ('_:v');
If VarIsClear (Result) Then
Result := Null
Else
If CellObj.GetAttribute (String ('t')) = 's' Then
Result := Strs [Result.Text]
Else Result := Result.Text;
End;
End;
Tema resuelto, gracias y un saludo.