2013-12-04 2 views
0

У меня есть функция, которая принимает две строки, и она должна их добавлять.VBA excel #VALUE error

Function teiseLopp(tekst1 As String, tekst2 As String) As String 
    Dim stringidKoos As String 
    stringidKoos = tekst1 & "" & tekst2 
    teiseLopp = stringidKoos 
End Function 

И он должен возвращать две строки вместе, но это показывает мне # ВАЛЮТА! = Значение, используемое в формуле, относится к неправильному типу данных. (Все кажется правильным типом данных)

+0

Каковы значения 'tekst1' и' tekst2' (и 'stringidKoos') при прохождении кода? – admdrew

+0

Они различают. Я принимаю значения из клеток excel. Например, одна ячейка представляет собой xyz, а другая суса. – user3067936

+0

Вы определили функцию 'As String'. То есть является вашей первой строкой кода 'Функция teiseLopp (tekst1 As String, tekst2 As String) As String'? –

ответ

0

Ваш код должен работать, если нет каких-либо ошибок в ячейках вы ссылаетесь с. Может быть, вы выбрали больше, чем одну ячейку в качестве входных данных? Вы можете дать следующую модификацию, чтобы попытаться понять, работает ли это. Он обрабатывает вас как Range и работает только с величиной в верхней левой ячейке в каждом диапазоне ввода.

Function teiseLopp(tekst1 As Range, tekst2 As Range) As String 
    Dim stringidKoos As String 
    stringidKoos = tekst1.Range("A1").Value & "" & tekst2.Range("A1").Value 
    teiseLopp = stringidKoos 
End Function 
0

Не нужно добавлять пустую строку посередине, и вам нужно определить свой тип данных. Попробуйте

Function teiseLopp(tekst1 As String, tekst2 As String) As String 
    Dim stringidKoos As String 
    stringidKoos = tekst1 & tekst2 
    teiseLopp = stringidKoos 
End Function 

Кроме того, почему бы не использовать обычную формулу, как в =A1&B1

+0

Это все еще дает мне ошибку значения. Но я планировал использовать комбинированную строку в функции для других целей. – user3067936

+0

Наиболее вероятной причиной является то, что один из ваших значений разрешает #VALUE! error – nutsch

+0

Значения находятся в ячейках «word» «this» без «». И teiseLopp - это как String, а stringidKoos - как String. – user3067936