Вопрос № 101512: Уважаемые эксперты, помогите с решением простоя задачи. Есть текстовый файл *.txt. Как програмно определить его кодировку и пересохранить в Unicode?...Вопрос № 101513: Здраствуйте скажите пожалуйста, как можно поделить два числа чтоб при результате числа после комы не считались?
НАПРИМЕР 12/5=2,4 , А НУЖНО = 2...Вопрос № 101520: Здравствуйте. Вопрос по Visual Basic 6.0 что в этом коде не правильно?
..Вопрос № 101531: Здравствуйте уважаемые эксперты!
Подскажите пожалуйста как отключить в экселе автоматический пересчет только одного листа. (на нем содержатся сводные данные по всем листам в книге).
Спасибо!...Вопрос № 101543: Как поделить два числа чтоб в результате после комы выводило не бельше чем 3 числа?...
Вопрос № 101.512
Уважаемые эксперты, помогите с решением простоя задачи. Есть текстовый файл *.txt. Как програмно определить его кодировку и пересохранить в Unicode?
Отвечает: Iris
Здравствуйте, Vladimir Dobrov!
Сначала переименуйте вручную
Лист1 в - str1_
Лист2 в - str2_
....(если захотите, можете потом в коде сами добавить:-)...меня так устраивает)
и сам код:
Sub FIO()
x = 1
str1_ = ActiveSheet.Name
Num = 1
sbros = ""
sbros1 = ""
sbros2 = ""
ActiveCell.SpecialCells(xlLastCell).Select
x = ActiveCell.Row
For i = 1 To x Step 1
Worksheets(str1_).Activate
Cells(i, 1).Select
sbros = Cells(i, 1).Value
Cells(i, 2).Select
sbros1 = Cells(i, 2).Value
Cells(i, 3).Select
sbros2 = Cells(i, 3).Value
Worksheets("str2_").Activate
Cells(Num, 1).Value = Mid(sbros, 1) + " " + Mid(sbros1, 1) + " " + Mid(sbros2, 1)
Num = Num + 1
Next i
End Sub
Ответ отправила: Iris (статус: 1-ый класс)
Ответ отправлен: 10.09.2007, 14:25
Отвечает: Черников Игорь Владимирович
Здравствуйте, Vladimir Dobrov!
Что касается, определить кодировку. Это сложно. Обычно для этих целей создается база с наиболее часто употребляемыми словами и потом текст сравнивается на наличие таких слов. Например, предлог "как" в кодировке koi-8 выглядит "ЛБЛ". Понятно, что такое словосочетание вряд ли будет в нормальном тексте (хотя и возможно), отсюда можно заключить, что это текст в кодировке koi-8.
http://e-dok.narod.ru/delphi/question1/opas/opas-026.html
--------- От каждого по способностям, каждому по труду
Ответ отправил: AlexanderZh (статус: Практикант)
Ответ отправлен: 10.09.2007, 13:58
Отвечает: Черников Игорь Владимирович
Здравствуйте, Коновалов Николай Станиславович!
В данном примере показано, как функции Int и Fix возвращают целые части чисел. В случае отрицательного аргумента Int возвращает ближайшее отрицательное целое число, меньшее либо равное указанному, а Fix ближайшее отрицательное целое число, большее либо равное указанному.
Отвечает: Черников Игорь Владимирович
Здравствуйте, Малышев Владимир Николаевич!
У Вас было 2 раза объявлено событие Private Sub Form_Load(), сначала он сругался на это, затем на форму потребовал разместить Label1, Text2, Command1 и PictureBox, переименованый под Pic. В директории с программой нужно создать файл input и записать в него несколько строк с числами. Я записл 10 строк от 1 до 10. Всё заработало. Удачи!
Приложение:
--------- От каждого по способностям, каждому по труду
Здравствуйте уважаемые эксперты!
Подскажите пожалуйста как отключить в экселе автоматический пересчет только одного листа. (на нем содержатся сводные данные по всем листам в книге).
Спасибо!
Отправлен: 10.09.2007, 15:58
Вопрос задал: Allbegood (статус: Посетитель)
Всего ответов: 1 Мини-форум вопроса >>> (сообщений: 0)
Отвечает: HookEst
Здравствуйте, Allbegood!
Как это сделать через стандартные настройки-не знаю, но с помощью VBA это просто.
открываете свою книгу;
заходите в редактор VBA (Alt+F11);
слева, в Окне проекта (Project Explorer) выделяете нужный лист (у меня просто Лист1);
ниже в Окне свойств(Property Window)ищете свойство EnableCalculation, его нужно установить в False;
все. Таким образом мы запретили пересчет именно этого листа, ни автоматически, ни вручную (через F9), лист пересчитыватся не будет. А если нам все таки понадобится пересчитать этот лист, можно также в VBA редакторе выставить свойство EnableCalculation листа в True, лист автоматически пересчитается, потом опять в False или же лучше использовать простенький макрос:
Вставляете в книгу модуль (Insert->Module) в нем пишите:
Public Sub CalculateOnce()
With Worksheets("Лист1")
.EnableCalculation = True
.EnableCalculation = False
End With
End Sub
где вместо Лист1 вставите имя Вашего листа.
все. Теперь этот макрос будет пересчитывать Ваш лист.
Успехов.
p/s
Подразумевал, что у Вас в настройках книги (Сервис->Параметры->Вычисления) вычисления стоят "автоматически".
Ответ отправил: HookEst (статус: Студент)
Ответ отправлен: 11.09.2007, 06:21 Оценка за ответ: 5 Комментарий оценки: Огромное спасибо!!!
Направление есть. Подстроимся.
Вопрос № 101.543
Как поделить два числа чтоб в результате после комы выводило не бельше чем 3 числа?
Отвечает: Черников Игорь Владимирович
Здравствуйте, Коновалов Николай Станиславович!
Dim ПослеЗапятой As Integer
Dim число As Double 'или Long
Dim флаг As Boolean
Dim НеНужноеЧисло As String
Dim НужноеЧисло As Double 'или Long
число = 123456.123456
For i = 1 To Len(CStr(число))
If флаг = True Then ПослеЗапятой = ПослеЗапятой + 1
ОдинСимвол = Mid(CStr(число), i, 1)
If ОдинСимвол = "," Then флаг = True
НеНужноеЧисло = НеНужноеЧисло + ОдинСимвол
If ПослеЗапятой >= 3 Then Exit For
Next i
НужноеЧисло = CDbl(НеНужноеЧисло) 'или CLng
--------- От каждого по способностям, каждому по труду
Ответ отправил: Черников Игорь Владимирович (статус: 5-ый класс)
Ответ отправлен: 10.09.2007, 20:16 Оценка за ответ: 5
Отвечает: PsySex
Здравствуйте, Коновалов Николай Станиславович!
См. приложение.
Приложение:
--------- Bom Shankar!
Ответ отправил: PsySex (статус: Практикант)
Ответ отправлен: 10.09.2007, 20:34 Оценка за ответ: 5
Отвечает: Тесленко Евгений Алексеевич
Здравствуйте, Коновалов Николай Станиславович!
попробуйте так:
Евгений.
Приложение:
Ответ отправил: Тесленко Евгений Алексеевич (статус: 9-ый класс)
Ответ отправлен: 10.09.2007, 20:47 Оценка за ответ: 4