Created attachment 189771 [details] Print-screen showing ENG and ITa versions for comparison On Libreoffice 7.5 and 7.6 (Italian translation) the REPLACE function is translated to SUBSTITUTE and vice versa. Hence, in order to use SUBSTITUTE (Ita: SOSTITUISCI) function one needs to type REPLACE (Ita: RIMPIAZZA). See attached file for print-screens. 7.4 version is ok. Thank you for your assistance!
I confirmed the problem in LO 7.6.1.2. I have not tested similar functions, such as REPLACEB(). I don't know whether this is a "simple" translation problem of Calc functions, or whether this will screw up all ODS (and other spreadsheet file formats) documents created in the affected versions. We also have to wonder whether other languages might be affected in a similar way. IMO, this is not just a NORMAL bug, because of the consequences for users building formulas (in Italian, at least, if not for other languages too). CC'ing Eike and Xisco.
Based on my tests, the formulae work fine (i.e. no impact on result), as when switching versions only the formula name was different.
(In reply to Aq222 from comment #2) > Based on my tests, the formulae work fine (i.e. no impact on result), as > when switching versions only the formula name was different. That is only part of the problem. * Imagine you are not aware of this issue, and you see the name of the function differently than expected. * A user of such spreadsheet might not be the same one that created the formula in some older version. * A user creating a formula using Italian function names in the affected versions would end up with unexpected results, whether the users notices such results or not. It would not be clear why the results are as they are. Whichever the case, IMO the origin of these incorrect translations should be reviewed ASAP, together with other potential incorrect translations (of the same functions to other languages, similar functions to any language, and so on). > Asking bibisectRequest. Although I have not tested LO 7.4 in Italian, the problem is not present in some older version I did test > regression. @Xisco, please modify the importance of this report.
STR: (Italian Language UI must be installed as part of LO installation) 1. Cell A1: a Cell A2: bb 2. Cell A3 (using semicolon as argument separator): =REPLACE(A1;1;1;A2) 3. Save as ods. 4. Menu Tools > Options > LibreOffice Calc > Formula > UNcheck "Use English function names". 5. Menu Tools > Options > Language Settings > User interface > Italian. Accept restarting LO. Review cell A3 in the file created in step 3. The result (i.e. function name) is as described in comment 0.
Valter: here are the strings in formula/messages.po: 1479 #. EVEza 1480 #: formula/inc/core_resource.hrc:2525 1481 msgctxt "RID_STRLIST_FUNCTION_NAMES" 1482 msgid "SUBSTITUTE" 1483 msgstr "RIMPIAZZA" 1395 #. dL3Bf 1396 #: formula/inc/core_resource.hrc:2511 1397 msgctxt "RID_STRLIST_FUNCTION_NAMES" 1398 msgid "REPLACE" 1399 msgstr "SOSTITUISCI" 1461 #. hMJEw 1462 #: formula/inc/core_resource.hrc:2522 1463 msgctxt "RID_STRLIST_FUNCTION_NAMES" 1464 msgid "REPLACEB" 1465 msgstr "SOSTITUISCI.B" There are also strings in helpcontent2/source/text/scalc/01.po: helpcontent2/source/text/scalc/01.po:21979:msgstr "<bookmark_value>RIMPIAZZA, funzione</bookmark_value>" helpcontent2/source/text/scalc/01.po:21988:msgstr "RIMPIAZZA" helpcontent2/source/text/scalc/01.po:22006:msgstr "RIMPIAZZA(\"Testo\"; \"CercaTesto\"; \"Nuovo testo\" [; Occorrenza])" helpcontent2/source/text/scalc/01.po:22051:msgstr "<item type=\"input\">=RIMPIAZZA(\"123123123\"; \"3\"; \"abc\")</item> restituisce 12abc12abc12abc." helpcontent2/source/text/scalc/01.po:22060:msgstr "<item type=\"input\">=RIMPIAZZA(\"123123123\";\"3\";\"abc\";2)</item> restituisce 12312abc123." helpcontent2/source/text/scalc/01.po:21583:msgstr "<bookmark_value>SOSTITUISCI, funzione</bookmark_value>" helpcontent2/source/text/scalc/01.po:21592:msgstr "SOSTITUISCI" helpcontent2/source/text/scalc/01.po:21619:msgstr "SOSTITUISCI(\"Testo\"; Posizione; Numero caratteri; \"Nuovo testo\")" helpcontent2/source/text/scalc/01.po:21664:msgstr "<item type=\"input\">=SOSTITUISCI(\"1234567\";1;1;\"444\")</item> restituisce \"444234567\". Un carattere alla posizione 1 viene sostituito dai caratteri specificati come <item type=\"literal\">Nuovo testo</item>." helpcontent2/source/text/scalc/01.po:65908:msgstr "Funzione SOSTITUISCI.B" helpcontent2/source/text/scalc/01.po:65917:msgstr "<bookmark_value>SOSTITUISCI.B, funzione</bookmark_value> <bookmark_value>Sostituire testo;Funzione SOSTITUISCI.B</bookmark_value>" helpcontent2/source/text/scalc/01.po:65926:msgstr "<variable id=\"replaceb\"><link href=\"text/scalc/01/func_replaceb.xhp\">SOSTITUISCI.B</link></variable>" helpcontent2/source/text/scalc/01.po:65944:msgstr "SOSTITUISCI.B( Testo ; Posizione ; Lunghezza ; Nuovo testo )" helpcontent2/source/text/scalc/01.po:65989:msgstr "<input>=SOSTITUISCI.B(\"ᄩᄔᄕᄜᄝᄞᄠᄢᄣᄫᄬᄭᄮᄯᄲᄶ\";4;1;\"ab\")</input> restituisce \"ᄩ abᄕᄜᄝᄞᄠᄢᄣᄫᄬᄭᄮᄯᄲᄶ\" ." helpcontent2/source/text/scalc/01.po:65998:msgstr "<link href=\"https://wiki.documentfoundation.org/Documentation/Calc_Functions/REPLACEB\">Pagina wiki relativa a SOSTITUISCI.B</link> (in inglese)." Just noticing it's on purpose considering: https://translations.documentfoundation.org/translate/libo_ui-master/formulamessages/it/?checksum=f1e7c0c3021663f0&q=note%3AEVEza&sort_by=-priority%2Cposition I let you discuss about it as Italian speakers.
I don't know that much what you have input, but one thing is certain: REPLACE is translated as RIMPIAZZA and SUBSTITUTE as SOSTITUISCI. As an example, if I have understood the baove strings correctly the result should be: 1479 #. EVEza 1480 #: formula/inc/core_resource.hrc:2525 1481 msgctxt "RID_STRLIST_FUNCTION_NAMES" 1482 msgid "SUBSTITUTE" 1483 msgstr "SOSTITUISCI" 1395 #. dL3Bf 1396 #: formula/inc/core_resource.hrc:2511 1397 msgctxt "RID_STRLIST_FUNCTION_NAMES" 1398 msgid "REPLACE" 1399 msgstr "RIMPIAZZA" As also reported in the second part of your comment, LO explains the function. As replace and substitute are inverted, their function descriptions are inverted too.
@Aq222, Is this still a problem? I believe this is correct as of: Version: 24.8.0.0.beta1+ (X86_64) / LibreOffice Community Build ID: d41604c16054e8e64aa4cd818ff252325f3eac58 ...but I'd rather see the OP confirm it.
You can check by loading the test document(s) of bug 93992 in an Italian UI.