2009-02-17 15 views

Odpowiedz

15

w VBA, vbCrLf jest linia złamać stała (wraz z vbCr i vbLf).

W kolumnie danych łańcuchowych jest to Chr(13) + Chr(10) (co zdefiniowano jako vbCrLf).

7

Podczas vbCrLf, vbCr i vbLf istnieje, to lepiej jest użyć vbNewLine.

Dlaczego?
1) Ponieważ vbNewLine wypisze sekwencję nowej linii dla bieżącego systemu operacyjnego (która może ulec zmianie) w porównaniu do pozostałych trzech, które będą wyprowadzać tylko znaki powrotu karetki i znaku wprowadzanego do linii.
2) Ponieważ jest mniej tajemniczy. Używanie vbCr jest tak samo złe, jak chr (13)

Powrót logiczny jest ... kiedy MS ma zamiar zmienić znak nowej linii, oni oszaleli. Tak jak to jest, przenośność. Istnieją już porty .Net do systemu Unix/Linux i nie ma powodu, aby nie można było na nim emulować dostępu MS. (Na przykład, może winem)

Edycja

Równolegle do tego pomysłu będzie za pomocą n \ w C i C++, wprowadzanie vs \ f \ R. \ n da ci natywną sekwencję nowej linii (nawet jeśli przerzucisz się z Uniksa na Windowsa, Maca na Vaxa na QNX). Bez instrukcji warunkowych, bez edycji. Po prostu działa.

+1

Co, dokładnie, robi .NET z programem Access? Muszę powiedzieć, myślę, że twoja sugestia jest szalona. :) –

+1

.Net jest tylko równoległym przykładem. Zakładam, że możesz być w stanie uruchomić aplikację dostępową MS w Wine (nie ma pojęcia, ale filozofia jest taka sama). – BIBD

+3

+1. To jest ważny punkt. Zwykle nie ma dobrego powodu, aby nie kodować optymalnej przenośności - teraz lub w przyszłości. – bernie