เหตุใดจึงต้องใช้ CONCATENATE vs & ใน Excel


38

ฉันสังเกตเห็นว่า"EXEC MySproc," & "arg, " & "arg2"เป็นหลักเช่นเดียว=CONCATENATE("EXEC MySproc,", "arg,", "arg2") กับความสามารถในการใช้การประเมินผลฟังก์ชั่น etecetera usecase สำหรับการใช้=CONCATENATE()vs &คืออะไร?


2
ในกรณีที่มีลำดับของการเรียงสตริงยาว CONCATENATE () มีศักยภาพที่จะเป็นเชิงเส้นแทนที่จะเป็นกำลังสองในความยาวของสตริงสุดท้าย ดูjoelonsoftware.com/2001/12/11/back-to-basics
Pieter Geerkens

1
เรื่องย่อ แต่ฉันมักจะใช้ CONCATENATE เมื่อรวมสตริงสามสายด้วยเหตุผลเดียวที่ฉันคุ้นเคยกับการแยกอาร์กิวเมนต์ด้วยเครื่องหมายจุลภาคมากกว่ากับเครื่องหมายแอมเปอร์แซนด์ ... ถึงแม้ว่าแน่นอนว่ามันไม่ใช่เหตุผลที่ถูกต้อง
Alexandre d'Entraigues

1
@PieterGeerkens: ฉันไม่รู้ว่าประเด็นของคุณคืออะไร ตกลงลำดับการเรียงสตริงแบบยาวที่ดำเนินการอย่างอิสระมีศักยภาพที่จะเป็นแบบเชิงเส้นหรือกำลังสองในความยาวของสตริงสุดท้ายขึ้นอยู่กับวิธีที่คุณเก็บสตริงในหน่วยความจำ คุณมีหลักฐานใด ๆ (หรือเหตุผลใด ๆ ที่ทำให้เชื่อ) CONCATENATE()และ&มีการใช้งานภายในแตกต่างกันใน Excel หรือไม่
G-Man กล่าวว่า 'Reinstate Monica'

คำตอบ:


54

เหมาะสำหรับคนที่ชอบพิมพ์มากกว่านี้ น่าจะเป็นผู้ชมกลุ่มเดียวกันที่ไม่สิ่งที่ชอบแทน=Sum((A1*A2)-A3) =(A1*A2)-A3(ใช่คนเหล่านี้มีอยู่และฉันไม่รู้ว่าทำไมพวกเขาถึงทำอย่างนั้น)

นอกจากนี้ยังให้โอกาสที่ยอดเยี่ยมในการสร้างฟังก์ชั่นที่ผู้ใช้กำหนดครั้งแรกกับ VBA เพื่อสร้างสิ่งที่มีประโยชน์มากกว่า Concatenate ()

Excel 2016 (ด้วยการสมัครใช้งาน Office 365) มีฟังก์ชันใหม่ที่ชื่อว่าTextJoin ()ซึ่งใช้ตัวคั่นและช่วงเป็นอาร์กิวเมนต์และเร็วกว่าการพิมพ์แอมป์แซนด์และตัวคั่นเป็นสตริงข้อความ ตอนนี้มันมีประโยชน์

ป้อนคำอธิบายรูปภาพที่นี่


5
อย่างน้อย SUM สามารถใช้ช่วง ขอบคุณสำหรับตัวชี้บน TEXTJOIN งานยังไม่ได้อัปเกรดเป็น 2016 แต่เมื่อพวกเขาทำฉันจะสามารถปลด UDF ของฉันได้ในที่สุด
Dranon

4
คุณไม่ได้หมายถึง=Sum(A1,A2)(เป็นทางเลือก=A1+B1)
xehpuk

8
@xehpuk ไม่ฉันไม่ได้ทำ บางคนใช้ฟังก์ชัน Sum () ล้อมรอบการคำนวณอย่างง่าย พวกเขาสามารถใช้แต่ด้วยเหตุผลบางอย่างที่พวกเขาเขียน=A1+A2 =Sum(A1+A1)หรือที่พวกเขาทำได้เรา=Sum(A1-A2) =A1-A2หรือที่พวกเขาสามารถใช้=Sum(A1*A2) =A1*A2บางคนใส่สูตรทุกชนิดไว้ในฟังก์ชัน Sum () และฉันพยายามเข้าใจว่าทำไม
teylyn

2
@IllusiveBrian นั่นเป็นเพราะคุณยังคงกดแป้น Shift ค้างไว้เมื่อคุณกด Spacebar นั้น
Mathieu Guindon

4
-1 ในขณะที่คำตอบนั้นตลก แต่ก็ไม่มีประโยชน์ คำถามไม่ใช่ "ทำไมผู้ใช้ CONCATENATE แทนที่จะเป็น &" แต่ "ทำไมจึงควร CONCATENATE แทนที่จะเป็น &?" คำตอบคือ "เทียบเท่ากันทั้งหมดความช่วยเหลือออนไลน์ของ Excel ระบุว่า & ควรใช้แทน" คำอธิบายที่ถูกต้อง (และเป็นประโยชน์) เช่นจาก Aganju คือ & มาภายหลังและ CONCATENATE ถูกทิ้งไว้ด้วยเหตุผลด้านความเข้ากันได้ซึ่งเป็นเหตุผลที่ถูกต้องสมบูรณ์ ทั้งหมดนี้ "คนโง่และต้องการที่จะพิมพ์มาก" คือไม่มีเหตุผลสำหรับ; มีเป็นเหตุผลว่าทำไมพวกเขาทำอย่างนั้นและก็ไม่ได้โง่เขลาของพวกเขา
AnoE

22

อาจเป็นเพราะพวกเขาใช้ปุ่มฟังก์ชั่นแทรก

ป้อนคำอธิบายรูปภาพที่นี่

บางครั้งฉันทำสิ่งนี้เมื่อฉันกินด้วยมือซ้ายและกำลังทำสูตรระดับต่ำหรือเมื่อฉันใช้อุปกรณ์สัมผัสและไม่สามารถสลับระหว่างสัญลักษณ์ตัวอักษรและตัวเลขบนหน้าจอสัมผัสได้ .


1
+1 Yup ฉันเคยใช้ปุ่มมันเพียงพอแล้วจึงไม่มีแรงจูงใจในการเรียนรู้ผู้ประกอบการ
kubanczyk

3
เพื่อ concat สตริงฉันต้องจำจุด.สำหรับ perl, pipe-pipe ||สำหรับ SQL, ไม่ char สำหรับ cmd และ bash, +สำหรับ Java ฉันจำเป็นต้องใช้&กับ Excel จริงๆหรือ
kubanczyk

2
@kubanczyk ถ้าคุณสามารถจำเหล่านั้น., ||และจากนั้นคุณสามารถจำได้+ &มันง่ายกว่าconcatenateesp ถ้าไม่มีภาษาอังกฤษค่อนข้างคล่องแคล่ว มันยังใช้ใน VBA
phuclv

3
@ LưuVĩnhPhúcความคล่องแคล่วในภาษาอังกฤษ - เท่าที่ฉันรู้ชื่อฟังก์ชั่นเหล่านั้นถูกแปลเป็นภาษาท้องถิ่น (เช่นเป็นVERKETTENภาษาเยอรมัน Excel)
Hagen von Eitzen

2
@ HagenvonEitzen อีกเหตุผลที่ดีที่จะใช้ผู้ประกอบการมากกว่าฟังก์ชั่น!
Mathieu Guindon

17

มันมีเหตุผลทางประวัติศาสตร์และความเข้ากันได้เท่านั้น Excel รุ่นก่อนหน้าไม่รองรับรูปแบบเดียวและเครื่องมือสเปรดชีตอื่น ๆ (เช่น Google เอกสาร, หมายเลข Apple หรือ Open Office) ไม่รองรับรูปแบบอื่น

เลือกสิ่งที่คุณต้องการ

โปรดทราบว่าขึ้นอยู่กับรูปแบบการบันทึก, Excel ต้องการพื้นที่มากขึ้นเพื่อประหยัดกว่าCONCATENATE()&


ได้. ฉันไม่รู้ว่า&มันเป็นสิ่งทดแทนมาCONCATENATEจนถึงตอนนี้ ฉันไม่ค่อยใช้ excel แต่เมื่อฉันทำมันมักจะเป็นสิ่งที่ต้องมีการต่อกัน
gabe3886

15

ในความคิดของฉันการเลือกใช้การเรียงต่อกันและเครื่องหมายแอมเปอร์แซนด์สามารถนำไปสู่สูตรที่ชัดเจนยิ่งขึ้น

การรวมกันของรายละเอียดที่อยู่นี้โดยใช้ส่วนผสมของCONCATENATEและ&ดูเหมือนชัดเจนสำหรับฉัน:

=CONCATENATE(StreetNumber," ",StreetName," ",StreetType) & CHAR(10) & CONCATENATE(CityName," ",StateCode," ",ZipCode) & CHAR(10) & CountryName

กว่าการใช้งานพิเศษของ&:

=StreetNumber & " " & StreetName & " " & StreetType & CHAR(10) & CityName & " " & StateCode & " " & ZipCode & CHAR(10) & CountryName

และการใช้งานพิเศษของCONCATENATE

=CONCATENATE(StreetNumber," ",StreetName," ",StreetType,CHAR(10),CityName," ",StateCode," ",ZipCode,CHAR(10),CountryName)

จากนั้นอีกครั้งฉันยืนยันว่า UDF BuildAddressจะเป็นทางออกที่ดีกว่า (และควรอยู่ที่ดีกว่าเพื่อจัดการกับรายละเอียดปลีกย่อยของการจัดรูปแบบที่อยู่ในโดเมนสากล - แม้ว่าฉันจะไม่ได้ใช้งาน)

Public Function BuildAddress(ByVal StreetNumber As String, ByVal StreetName As String, _
    ByVal StreetType As String, ByVal CityName As String, ByVal StateCode As String, _
    ByVal ZipCode As String, ByVal CountryName As String) As String


    BuildAddress = StreetNumber & " " & StreetName & " " & StreetType & vbCrLf & _
                   CityName & " " & StateCode & " " & ZipCode & vbCrLf & _
                   CountryName

End Function

แต่บางทีอีกตัวอย่างหนึ่งซึ่งรวมถึงการใช้& ภายในสตริงตัวอักษรแสดงให้เห็นถึงความยากลำบากในการอ่านสูตรที่บังคับให้ตัวเองใช้ตัวดำเนินการเฉพาะ :

=A1&"A2&A3&A4"&A5

อาจจะเขียนได้ดีกว่าเป็น:

=CONCATENATE(A1,"A2&A3&A4",A5)

แต่ประสิทธิภาพเป็นสิ่งที่สำคัญและขึ้นอยู่กับจำนวนของข้อโต้แย้งที่ถูกต่อกันและความยาวของแต่ละอาร์กิวเมนต์CONCATENATEฟังก์ชั่นจะมีประสิทธิภาพสูงกว่าตัวดำเนินการเรียงต่อกันโดยปัจจัยระหว่าง 4 ถึง 6 เป็นที่ยอมรับตัวอย่างนี้สุดขีด มีการเชื่อมอาร์กิวเมนต์ 255 รายการเข้าด้วยกัน 10,000 ครั้ง ฉันไม่แนะนำให้ใช้ความยาวของสตริงอาร์กิวเมนท์ที่มากกว่า 32 หรือคุณอาจมีหน่วยความจำ / Excel เสียหาย

นี่คือกลไกการจับเวลาแบบหยาบ:

Option Explicit

Const ConcatenationOperatorFormula As String = _
  "=$A$1&$A$2&$A$3&$A$4&$A$5&$A$6&$A$7&$A$8&$A$9&$A$10&$A$11&$A$12&$A$13&$A$14&$A$15&$A$16&$A$17&$A$18&$A$19&$A$20&$A$21&$A$22&$A$23&$A$24&$A$25&$A$26&$A$27&$A$28&$A$29&$A$30&$A$31&$A$32&$A$33&$A$34&$A$35&$A$36&$A$37&$A$38&$A$39&$A$40&$A$41&$A$42&$A$43&$A$44&$A$45&$A$46&$A$47&$A$48&$A$49&$A$50&$A$51&$A$52&$A$53&$A$54&$A$55&$A$56&$A$57&$A$58&$A$59&$A$60&$A$61&$A$62&$A$63&$A$64&$A$65&$A$66&$A$67&$A$68&$A$69&$A$70&$A$71&$A$72&$A$73&$A$74&$A$75&$A$76&$A$77&$A$78&$A$79&$A$80&$A$81&$A$82&$A$83&$A$84&$A$85&$A$86&$A$87&$A$88&$A$89&$A$90&$A$91&$A$92&$A$93&$A$94&$A$95&$A$96&$A$97&$A$98&$A$99&$A$100&" & _
  "$A$101&$A$102&$A$103&$A$104&$A$105&$A$106&$A$107&$A$108&$A$109&$A$110&$A$111&$A$112&$A$113&$A$114&$A$115&$A$116&$A$117&$A$118&$A$119&$A$120&$A$121&$A$122&$A$123&$A$124&$A$125&$A$126&$A$127&$A$128&$A$129&$A$130&$A$131&$A$132&$A$133&$A$134&$A$135&$A$136&$A$137&$A$138&$A$139&$A$140&$A$141&$A$142&$A$143&$A$144&$A$145&$A$146&$A$147&$A$148&$A$149&$A$150&$A$151&$A$152&$A$153&$A$154&$A$155&$A$156&$A$157&$A$158&$A$159&$A$160&$A$161&$A$162&$A$163&$A$164&$A$165&$A$166&$A$167&$A$168&$A$169&$A$170&$A$171&$A$172&$A$173&$A$174&$A$175&$A$176&$A$177&$A$178&$A$179&$A$180&$A$181&$A$182&$A$183&$A$184&$A$185&$A$186&$A$187&$A$188&$A$189&$A$190&$A$191&$A$192&$A$193&$A$194&$A$195&$A$196&$A$197&$A$198&$A$199&$A$200&" & _
  "$A$201&$A$202&$A$203&$A$204&$A$205&$A$206&$A$207&$A$208&$A$209&$A$210&$A$211&$A$212&$A$213&$A$214&$A$215&$A$216&$A$217&$A$218&$A$219&$A$220&$A$221&$A$222&$A$223&$A$224&$A$225&$A$226&$A$227&$A$228&$A$229&$A$230&$A$231&$A$232&$A$233&$A$234&$A$235&$A$236&$A$237&$A$238&$A$239&$A$240&$A$241&$A$242&$A$243&$A$244&$A$245&$A$246&$A$247&$A$248&$A$249&$A$250&$A$251&$A$252&$A$253&$A$254&$A$255"

Const ConcatenateFunctionFormula As String = _
  "=CONCATENATE($A$1,$A$2,$A$3,$A$4,$A$5,$A$6,$A$7,$A$8,$A$9,$A$10,$A$11,$A$12,$A$13,$A$14,$A$15,$A$16,$A$17,$A$18,$A$19,$A$20,$A$21,$A$22,$A$23,$A$24,$A$25,$A$26,$A$27,$A$28,$A$29,$A$30,$A$31,$A$32,$A$33,$A$34,$A$35,$A$36,$A$37,$A$38,$A$39,$A$40,$A$41,$A$42,$A$43,$A$44,$A$45,$A$46,$A$47,$A$48,$A$49,$A$50,$A$51,$A$52,$A$53,$A$54,$A$55,$A$56,$A$57,$A$58,$A$59,$A$60,$A$61,$A$62,$A$63,$A$64,$A$65,$A$66,$A$67,$A$68,$A$69,$A$70,$A$71,$A$72,$A$73,$A$74,$A$75,$A$76,$A$77,$A$78,$A$79,$A$80,$A$81,$A$82,$A$83,$A$84,$A$85,$A$86,$A$87,$A$88,$A$89,$A$90,$A$91,$A$92,$A$93,$A$94,$A$95,$A$96,$A$97,$A$98,$A$99,$A$100," & _
  "$A$101,$A$102,$A$103,$A$104,$A$105,$A$106,$A$107,$A$108,$A$109,$A$110,$A$111,$A$112,$A$113,$A$114,$A$115,$A$116,$A$117,$A$118,$A$119,$A$120,$A$121,$A$122,$A$123,$A$124,$A$125,$A$126,$A$127,$A$128,$A$129,$A$130,$A$131,$A$132,$A$133,$A$134,$A$135,$A$136,$A$137,$A$138,$A$139,$A$140,$A$141,$A$142,$A$143,$A$144,$A$145,$A$146,$A$147,$A$148,$A$149,$A$150,$A$151,$A$152,$A$153,$A$154,$A$155,$A$156,$A$157,$A$158,$A$159,$A$160,$A$161,$A$162,$A$163,$A$164,$A$165,$A$166,$A$167,$A$168,$A$169,$A$170,$A$171,$A$172,$A$173,$A$174,$A$175,$A$176,$A$177,$A$178,$A$179,$A$180,$A$181,$A$182,$A$183,$A$184,$A$185,$A$186,$A$187,$A$188,$A$189,$A$190,$A$191,$A$192,$A$193,$A$194,$A$195,$A$196,$A$197,$A$198,$A$199,$A$200," & _
  "$A$201,$A$202,$A$203,$A$204,$A$205,$A$206,$A$207,$A$208,$A$209,$A$210,$A$211,$A$212,$A$213,$A$214,$A$215,$A$216,$A$217,$A$218,$A$219,$A$220,$A$221,$A$222,$A$223,$A$224,$A$225,$A$226,$A$227,$A$228,$A$229,$A$230,$A$231,$A$232,$A$233,$A$234,$A$235,$A$236,$A$237,$A$238,$A$239,$A$240,$A$241,$A$242,$A$243,$A$244,$A$245,$A$246,$A$247,$A$248,$A$249,$A$250,$A$251,$A$252,$A$253,$A$254,$A$255)"

Const ARGUMENT_STRING_LENGTH As Long = 1

Sub test2()

  Dim start As Single

  'Disable app events to exclude UI/calculation artefacts
  Application.ScreenUpdating = False
  Application.EnableEvents = False
  Application.Calculation = xlCalculationManual

  Dim inputs As Range
  Set inputs = Range("A1:A255")

  Dim operatorRange As Range
  Set operatorRange = Range("B1:B10000")

  Dim functionRange As Range
  Set functionRange = Range("C1:C10000")

  'Reset the range values/formulas
  inputs.Value2 = ""
  operatorRange.Formula = ConcatenationOperatorFormula
  functionRange.Formula = ConcatenateFunctionFormula

  'Change the inputs to invalidate the calculation results
  inputs.Value2 = String(ARGUMENT_STRING_LENGTH, "B")

  'Time the calculation of operator formulas
  start = Timer
  operatorRange.Calculate
  Debug.Print "Operator Calculation", ARGUMENT_STRING_LENGTH, FormatNumber(Timer - start, 8)

  'Time the calculation of function formulas
  start = Timer
  functionRange.Calculate
  Debug.Print "Function Calculation", ARGUMENT_STRING_LENGTH, FormatNumber(Timer - start, 8)

  'Reset the range values to empty
  inputs.Value2 = ""
  operatorRange.Value2 = vbNullString
  functionRange.Value2 = vbNullString

  'Restore App defaults
  Application.ScreenUpdating = True
  Application.EnableEvents = True
  Application.Calculation = xlCalculationAutomatic

End Sub

และผลลัพธ์ตามความยาวของสตริงอาร์กิวเมนต์:

Method                 String Length   Seconds
---------------------  --------------  -----------
Function Calculation   1               0.06640625
Operator Calculation   1               0.21484380
Function Calculation   10              0.09765625
Operator Calculation   10              0.47265630
Function Calculation   32              0.17578130
Operator Calculation   32              1.17968800

แต่เรายังไม่ได้พูดคุยกับช้างในห้อง คุณกำลังสร้างคำสั่ง SQL โดยใช้การต่อข้อมูล อย่าทำอย่างนั้น คุณกำลังดำเนินการตามขั้นตอนการจัดเก็บที่ยอมรับพารามิเตอร์ หากคุณไม่ได้ทำการอินพุตที่ถูกต้อง (และฉันคาดเดาว่าคุณยังไม่ได้) การสร้างสตริง SQL โดยใช้การต่อข้อมูลจะขอให้ SQL-injection โจมตี คุณอาจเปิดเผย UDF ที่เรียกว่าJohnnyDropTables...


คุณกำลังทำข้อสมมติที่มีสุขภาพดีในส่วนสุดท้าย ....
Taylor Ackley

4

มันเป็นความแตกต่างของโดเมนความหมาย เชื่อมต่อกันเป็นชื่อของฟังก์ชันสเปรดชีต เครื่องหมายแอมเปอร์แซนด์เป็นตัวดำเนินการเรียงต่อกันที่ยืมมาจาก Visual Basic ผู้ที่ไม่เคยใช้ VBA จะพบฟังก์ชั่นการใช้งานง่ายกว่า VBA Syntax มันเป็นเหตุผลเดียวกันว่าทำไมมีฮอตคีย์ไอคอนและตัวเลือกเมนูเพื่อบันทึกซึ่งทำให้ซอฟต์แวร์ใช้งานง่ายขึ้น


1

ฉันใช้ทั้งสองอย่าง

สำหรับรายการที่มีความยาวซึ่งฉันอาจต้องตรวจสอบด้วยสายตาเครื่องหมายจุลภาคใช้พื้นที่สายตาน้อยกว่าแอมเปอร์แซนด์

การอ่านรายการของเซลล์ที่คั่นด้วยเครื่องหมายจุลภาคง่ายกว่าคั่นด้วยเครื่องหมายแอมเปอร์แซนด์โดยเฉพาะอย่างยิ่งเมื่อมีเครื่องหมายแอมเปอร์แซนด์ (หลังจาก 15 ชั่วโมงต่อวัน) มากเกินไปเช่น $

สิ่งนี้มีบทบาทที่มีความหมายสำหรับ CONCATENATE

แต่ - เห็นด้วย - ไม่มีประโยชน์ความเร็วหรือความแตกต่างในการทำงาน


0

กรณีการใช้งานเฉพาะอย่างหนึ่งคือ=CONCATENATE(A1:A10)มันสั้นกว่า=A1&A2&A3&A4&A4&A6&A7&A8&A9&A10มาก นอกจากนี้ยังเห็นได้ชัดว่าถูกต้องมากขึ้น (ในความเป็นจริงตัวอย่าง&รุ่นมีข้อผิดพลาดโดยเจตนา)

ฉันลองสิ่งนี้ก่อน แต่ฉันใช้ office Excel ซึ่งเป็นภาษาเยอรมัน TEXTKETTEทำงานตามที่ฉันอธิบาย แต่เอกสารแสดงให้เห็นว่ามันเป็นฟังก์ชั่นใหม่และแทนที่VERKETTEN(ซึ่งจะเทียบเท่าเยอรมันCONCATENATE)


3
@Vylix: ไม่ฉันหมายความว่าCONCATENATEแบบฟอร์มนั้นถูกต้องชัดเจนยิ่งขึ้น หากคุณต้องการต่อส่วนประกอบทั้งหมดของช่วงให้ช่วงนั้นมีความคลาดเคลื่อนน้อยกว่าการให้แต่ละองค์ประกอบทีละตัว
Martin Bonner สนับสนุน Monica

6
ตัวอย่างเฉพาะของ&แบบฟอร์มมีข้อผิดพลาดโดยเจตนา
Martin Bonner สนับสนุน Monica

6
@MartinBonner =CONCATENATE(A1:A10) ไม่ทำงานใน Excel หากคุณมีฟังก์ชั่นดังกล่าวมันเป็น UDF ที่กำหนดเองไม่ใช่ Excel ดั้งเดิม แต่มันไม่สามารถเป็น UDF ที่มีชื่อเดียวกับฟังก์ชันเนทิฟ
teylyn

3
@MartinBonner ข้อโต้แย้งของคุณอาจมีไว้สำหรับฟังก์ชั่นที่ชอบSUMและตัวดำเนินการที่ชอบ+แต่มันไม่ได้ใช้กับCONCATENATEฟังก์ชั่นของ Excel =CONCATENATE(A1:A2)คือไม่เคยผลเช่นเดียวกับ=A1&A2
ThunderFrame

=CONCATENATE(A1:A10)ให้ผลลัพธ์A1ดังนั้นจึงเห็นได้ชัดว่าไม่เพียง แต่สั้นลง แต่แตกต่างกัน
phuclv

0

ฉันไม่เห็นคำตอบที่แท้จริงที่นี่ แต่มีข้อมูลเชิงลึกบางอย่าง (สำหรับใครก็ตามที่อาจหาคำตอบนี้ในอนาคต)

"Concatenate" เป็นฟังก์ชั่นที่เก่ากว่าซึ่งทำสิ่งเดียวกับ "&", "&" ที่เพิ่มเข้ามาในภายหลังเพื่อความสอดคล้องในภาษาการเขียนโปรแกรม อย่างไรก็ตาม "Concatenate" ถูกแทนที่ด้วย "Concat" เพื่อรองรับช่วงดังนั้นคุณสามารถรวม A1: A10 โดยไม่ต้องใช้สคริปต์ที่กำหนดเองใด ๆ "&" ยังคงไม่อนุญาตให้มีช่วงและใช้เซลล์แรกในลักษณะเดียวกับ "Concatenate" เท่านั้น ดังนั้นหากรวมช่วง "Concat" จะทำให้ฟังก์ชั่นพิเศษนั้นเปลี่ยนไปจาก 2 สไตล์ก่อนหน้านี้ที่มีการเข้ารหัสแตกต่างกัน การสร้าง "Concatenate" และ "&" ​​เป็นสิ่งที่ต้องการเมื่อใช้สตริงที่รวมกันแบบไม่บังคับว่าคุณต้องการพิมพ์ออกมาอย่างไร

https://support.office.com/en-ie/article/concat-function-9b1a9a3f-94ff-41af-9736-694cbd6b4ca2


-6

RTFM&ไมโครซอฟท์กล่าวว่าการใช้งาน

BTW คุณจะได้รับคำตอบต่าง ๆ เมื่อใช้ตัวดำเนินการ SUM

ป้อนคำอธิบายรูปภาพที่นี่


"CONCATENATE อาจไม่พร้อมใช้งานใน Excel รุ่นอนาคต" ฮ่าฮ่าถูกต้อง พวกเขายังคงสนับสนุน=ทางเลือก - เข้าสู่ฟังก์ชั่นเหมือน@CONCATENATE(A1,A2)และการคำนวณเหมือนหรือ+A5+A6 -A5+A6
Džuris

2
"อ่าน F'n Manual" ไม่ได้เป็นสิ่งที่ดีเป็นเรื่องเกี่ยวกับ
Mathieu Guindon

2
@ Mat'sMug The F สามารถยืนหยัดได้ด้วยดี :)
DavidPostill
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.